well to answer your question about paginate and containable, you can
set 'contain' paramaters on $paginate along with conditional
containment. as far as global model operations like you describe it
might be easier to do that but i'm not sure of the best way. let us
know what you come up with.

On Jul 29, 2:33 am, park <[email protected]> wrote:
> Hi James,
>
> You're absolutely right. I can't agree more on the fat model idea.
>
> Your approach should definitely work, but I still need to dive into
> controllers and make changes to find calls. And what's more, what
> about the paginate things? What about containable queries that concern
> this model...
>
> I assume there should be a way to globally set this condition in the
> scope of this particular model? Like setting conditions to
> Model.approved = 1, which affects all queries, paginations as well as
> containable.
>
> Something like this one, but much 
> simpler:http://bakery.cakephp.org/articles/view/soft-delete-behavior
>
> As for the admin part, maybe I can disable this condition on the fly
> before whenever a query is made.
>
> On Jul 29, 2:13 pm, JamesF <[email protected]> wrote:
>
> > "It's an existing site, so I don't want to rewrite conditions for all
> > find queries. "
>
> > ahh thats why we should be using fat models instead of fat
> > controllers.
>
> > the most direct way to achieve this would be to put it in each find
> > call.
>
> > the best way would be to set up a function in your model, lets call it
> > findApproved()
>
> > so in you model you put
>
> > function findApproved(){
>
> >      $data = $this->find('all', array('conditions'=>array
> > ('Model.approved'=>1,
> > more conditions etc etc)));
>
> >       return $data;
>
> > }
>
> > in your controller just put
> > $this->Model->findApproved() in place of those old rusty controller
> > find calls.
>
> > On Jul 29, 1:38 am, park <[email protected]> wrote:
>
> > > Hi,
>
> > > Would like to add an "approved" field for a model. Users can only see
> > > entries whose Model.approved = 1. Only in admin section can unapproved
> > > entries be retrieved.
>
> > > It's an existing site, so I don't want to rewrite conditions for all
> > > find queries.
>
> > > Is there a centralized method (presumably in Model) of achieving this?
>
> > > Many thanks!
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to