Wednesday, July 4, 2012

Re: Finding an user with a field from associated data ?

Then you should only need to do:

return $this->Following->find('count');

That's if the method is in your model. If in the controller,
$this->User->Following ...

On Wed, Jul 4, 2012 at 5:43 PM, JonStark <jeanfau@gmail.com> wrote:
> My User Model :
>
>> class User extends AppModel {
>> public $name = 'User';
>>
>> public $hasAndBelongsToMany = array(
>> 'Following' => array(
>> 'className' => 'User',
>> 'joinTable' => 'users_users',
>> 'foreignKey' => 'follower_id',
>> 'associationForeignKey' => 'following_id',
>> 'unique' => true,
>> 'conditions' => '',
>> 'fields' => '',
>> 'order' => 'Following.username ASC',
>> 'limit' => '',
>> 'offset' => '',
>> 'finderQuery' => '',
>> 'deleteQuery' => '',
>> 'insertQuery' => ''
>> ),
>> 'Follower' => array(
>> 'className' => 'User',
>> 'joinTable' => 'users_users',
>> 'foreignKey' => 'following_id',
>> 'associationForeignKey' => 'follower_id',
>> 'unique' => true,
>> 'conditions' => '',
>> 'fields' => '',
>> 'order' => 'Follower.username ASC',
>> 'limit' => '',
>> 'offset' => '',
>> 'finderQuery' => '',
>> 'deleteQuery' => '',
>> 'insertQuery' => ''
>> )
>> );
>>
>>
>> }
>
>
> The table used for association is users_users , wich has id, follower_id and
> following_id
>
>
>
> Le mercredi 4 juillet 2012 20:38:05 UTC+2, JonStark a écrit :
>>
>> Hi everyone !
>>
>> I have a question that shouldn't be that hard but I really can't manage it
>> :
>>
>> In my app, User HABTM User
>>
>> users_users table is : id, following_id, follower_id
>>
>> I want to count every user where follower id is $id.
>>
>> This is my function :
>>
>>> public function countFollowing($id) {
>>> $user = $this->User->find('all', array(
>>> 'conditions' => array(
>>> 'UserUsers.follower_id' => $id
>>> ),
>>> ));
>>> count($user);
>>> }
>>
>>
>> But it returns Error: SQLSTATE[42S22]: Column not found: 1054 Unknown
>> column 'UserUsers.follower_id' in 'where clause'...
>>
>> Any idea why ? Thanks a lot for your time !
>>
> --
> Our newest site for the community: CakePHP Video Tutorials
> http://tv.cakephp.org
> Check out the new CakePHP Questions site http://ask.cakephp.org and help
> others with their CakePHP related questions.
>
>
> To unsubscribe from this group, send email to
> cake-php+unsubscribe@googlegroups.com For more options, visit this group at
> http://groups.google.com/group/cake-php

--
Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org
Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions.


To unsubscribe from this group, send email to
cake-php+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php

No comments: