[Catalyst] Catalyst::Model::DBIC::Schema or not?
Jason Gottshall
jgottshall at capwiz.com
Wed Mar 28 20:32:57 GMT 2007
Brian Kirkbride wrote:
> I definitely have Models, but they are a higher-level abstraction than
the ORM
> layer. If I understand your argument, you are advocating that data
constraints
> imposed by your business logic be enforced by the the DB rather than
the ORM.
> That's all fine and good, but MUCH lower level than what I have in my
Catalyst
> Models.
>
> I usually have an architecture like this:
>
> Client -> Controller -> Model -> ORM -> Database
>
> The ORM is usually just vanilla (as you suggested), the Database
enforces simple
> data constraints (foreign keys, etc) and the Model makes sure that the
complex
> business logic constraints are met. Some things are simply not
enforceable by a
> stored procedure - this might involve validation of image files for
example.
>
> The beauty of Catalyst is that it's up to you how to handle separation
of
> concerns and Catalyst is helpful no matter how you do.
Thanks, Brian. This is the exact structure I'm considering. So my
question is this: If all the ORM interaction happens at the Model level,
and DBIC isn't being treated as a "model" itself, is there any reason to
use Catalyst::Model::DBIC::Schema to establish the db connections? I
guess my gut tells me "no", but I want to make sure I'm not missing
something here.
More information about the Catalyst
mailing list