Thank you Arthur - I figured I'd have to do it that way - was just looking for a more elegant solution.
Thanks! ~R~ On Dec 29, 1:54 pm, "Arthur Pemberton" <[email protected]> wrote: > On Mon, Dec 29, 2008 at 2:59 PM, WebFeathers <[email protected]> wrote: > > > Hey- > > I'm trying to generate a list of users who are not friends of the > > currently logged in user. > > I have two tables: profiles, and users_users > > profiles includes the fields: id, first_name, last_name, etc... > > users_users includes: id, user_id, friend_id > > > I can get the list of users who ARE friends: > > $friends = $this->User->findAll('User.id=' . $target); > > > ...but can't figure out how to go the other way??? > > > My user model includes: > > class User extends AppModel > > { > > var $name = 'User'; > > var $hasAndBelongsToMany = array( > > 'Friends' => array( > > 'className' => 'Profile', > > 'joinTable' =>'users_users', > > 'foreignKey' =>'user_id', > > 'associationForeignKey' => 'friend_id', > > 'unique'=> true > > ), > > 'FriendList' => array( > > 'className' => 'users_users', > > 'joinTable' =>'users_users', > > 'foreignKey' =>'user_id', > > 'associationForeignKey' => 'friend_id', > > 'unique'=> true > > ) > > ); > > } > > I believe if you did this in raw SQL, you would need to do a sub > query. I don't think CakePHPs ORM generates sub queries (subject to > correction). > > The simplest solution would be to generate a list of the ids of the > friends, and get all users whose id is not in that list. > > [1] show how to do an IN condition > > [1]http://book.cakephp.org/view/74/Complex-Find-Conditions > > -- > Fedora 9 : sulphur is good for the skin > (www.pembo13.com) --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
