@vcrack: You will not be able to run the find from Category model as
it hasMany Business so Cake runs one query for Category then another
query for that Category's many Businesses and joins the data
afterwards, hence why you're getting the Unknown column
'Business.city' in 'where clause'  error.

However, if you want to find all businesses for a city, without
specifying any category criteria, what's this got to do with
categories at all?  Why not just run:
$this->Business->find('all', array('conditions' =>
array('Business.city' => $city)));

And if getting these results from within the category controller
$this->Category->Business->find('all', array('conditions' =>
array('Business.city' => $city)));

@Alan: If he is using containable and you wanted to contain Category
then you run the find on the Business model

$this->Business->find('all', array('contain'=>array('Category'),
'conditions' => array('Business.city' => $city)));

HTH

Paul

On Mar 18, 10:27 am, vcrack <vcrack.0...@gmail.com> wrote:
> hmm.. it's not work and appear the same error..
> SQL Error: 1054: Unknown column 'Business.city' in 'where clause'
>
> On Mar 18, 3:28 pm, "Alan Asher" <a...@asteriskpound.com> wrote:
>
> > Alright try it the way you had it, but with a contain
>
> > $this->Business->Category->find('all', array('contain'=>array('Category'),
> > 'conditions' => array('Business.city' => $city)));
>
> > -----Original Message-----
> > From: cake-php@googlegroups.com [mailto:cake-...@googlegroups.com] On Behalf
>
> > Of vcrack
> > Sent: Wednesday, March 17, 2010 11:26 PM
> > To: CakePHP
> > Subject: Re: help me about association query
>
> > I did try your code but it's return all data business and related data
> > business..
> > I want to find all category and in array category contain all related
> > business but have X city..
>
> > my model..
> > models/business.php
> > class Business extends AppModel{
> >       var $name  = 'Business';
>
> >       var $belongsTo = array('Category','BusinessContact','Mall');
>
> >       var $hasAndBelongsToMany = array(
> >                                     'User' =>
> >                                     array(
> >                                             'className' => 'User',
> >                                             'joinTable' =>
> > 'favorites',
> >                                             'foreignKey' =>
> > 'business_id',
> >                                             'associationForeignKey' =>
> > 'user_id'
> >                                         )
> >                                     );
> > }
>
> > models/category.php
> > class Category extends AppModel{
> >       var $name = 'Category';
>
> >       var $hasMany = array('Business');
> >   }
>
> > i still need your help.. thanks, :)
>
> > On Mar 18, 1:14 pm, "Alan Asher" <a...@asteriskpound.com> wrote:
> > > I might need to see your models but you probably need to do something like
> > > this.
>
> > $this->Business->find('all,array('conditions'=>array('Business.city'=>$city)
> > > ,'contain'=>array('Category')));
>
> > > The contain clause will make sure to limit your search results to have
> > only
> > > categories (as well as the businesses) in the results.
>
> > > -----Original Message-----
> > > From: cake-php@googlegroups.com [mailto:cake-...@googlegroups.com] On
> > Behalf
>
> > > Of vcrack
> > > Sent: Wednesday, March 17, 2010 10:23 PM
> > > To: CakePHP
> > > Subject: help me about association query
>
> > > my code
> > > I have model Business and model category. i want to find business for
> > > all category but from X city..
>
> > > $this->Business->Category->find('all', array('conditions' =>
> > > array('Business.city' => $city)));
>
> > > error message : SQL Error: 1054: Unknown column 'Business.city' in
> > > 'where clause'
>
> > > I'm sure in column city in table model business is exist.. anyone can
> > > help mer?
>
> > > Check out the new CakePHP Questions sitehttp://cakeqs.organdhelpothers
> > > with their CakePHP related questions.
>
> > > You received this message because you are subscribed to theGoogleGroups
> > > "CakePHP" group.
> > > To post to this group, send email to cake-php@googlegroups.com
> > > To unsubscribe from this group, send email to
> > > cake-php+unsubscr...@googlegroups.com For more options, visit this group
> > athttp://groups.google.com/group/cake-php?hl=en
>
> > Check out the new CakePHP Questions sitehttp://cakeqs.organdhelp others
> > with their CakePHP related questions.
>
> > You received this message because you are subscribed to theGoogleGroups
> > "CakePHP" group.
> > To post to this group, send email to cake-php@googlegroups.com
> > To unsubscribe from this group, send email to
> > cake-php+unsubscr...@googlegroups.com For more options, visit this group 
> > athttp://groups.google.com/group/cake-php?hl=en

Check out the new CakePHP Questions site http://cakeqs.org and help others with 
their CakePHP related questions.

You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To post to this group, send email to cake-php@googlegroups.com
To unsubscribe from this group, send email to
cake-php+unsubscr...@googlegroups.com For more options, visit this group at 
http://groups.google.com/group/cake-php?hl=en

To unsubscribe from this group, send email to 
cake-php+unsubscribegooglegroups.com or reply to this email with the words 
"REMOVE ME" as the subject.

Reply via email to