[Catalyst] (no subject)

Justin Tocci jtocci at tocci.org
Fri Jun 10 01:43:22 CEST 2005

Dominique Quatravaux had this to say to Perrin:
> ... preventing nonsensical updates of the model is also
> profitable to non-Web parts of the app such as crontabs, so it is best
> done in the model (or even deeper, directly within the database using
> SQL triggers or such).

I agree. When we start talking about SQL triggers, views, rules and  
other database actions, there is data protection code and data  
methods. I have an inventory application that is written entirely in  
the database. Users interface to it using only Select, Update, Delete  
and Create actions (DUCS?) on views. In this way I only have to count  
on the front end application for the basic CRUD actions, enabling me  
to move from Microsoft Access to the web more easily. In this app, I  
have some code that prevents the user from making a mistake (data  
protection), and I have some code that does things specific to this  
company, such as process a list of parts in a certain way, (data  
methods). Just for clarity, I want to point out I wasn't referring to  
this code as 'business logic'. Though I know many would disagree, I  
look at this as entirely model stuff. I think even those who don't  
like code in the database will admit, these things sometimes don't  
perform well if they aren't put in the database, and I have a  
personality defect that inclines me to put it all there if I have to  
put some of it there.

justin tocci
Fort Worth, Texas

More information about the Catalyst mailing list