I suspect there is something else going on specific to your setup. I baked up a quick test app and had no problems at all. I didn't alias the association at all.
My model names and associations were the same as yours. $this->Operation->find('all', array( 'contain' => array( 'User', 'OperationType', 'OperationParticipant' => array('User') ) ); Yielded this result: array( (int) 0 => array( 'Operation' => array( 'id' => '1', 'user_id' => '1', 'descr' => 'fooo', 'operation_type_id' => '1' ), 'User' => array( 'id' => '1', 'username' => 'aaa' ), 'OperationType' => array( 'id' => '1', 'descr' => 'Foo' ), 'OperationParticipant' => array( (int) 0 => array( 'id' => '1', 'user_id' => '1', 'operation_id' => '1', 'User' => array( 'id' => '1', 'username' => 'aaa' ) ), (int) 1 => array( 'id' => '2', 'user_id' => '2', 'operation_id' => '1', 'User' => array( 'id' => '2', 'username' => 'bbb' ) ) ) ) ) I'm still thinking about this. On Monday, October 8, 2012 7:45:39 AM UTC-4, José Lorenzo wrote: > > You need the alias as cricket said and in your find you need 'contain' => > array('OpUser', 'User') > > El lunes, 8 de octubre de 2012 01:50:05 UTC+2, Greg escribió: >> >> Sure have. Its containable that i'm suspecting is the problem.. Its >> almost as though it binds the model on the first level of contain, but then >> fails to rebind it after. If i turn containable off I can query the model >> with ->find();, but with containable on ->find() throws a non-existant >> method/non-existant object error. >> >> >> On Mon, Oct 8, 2012 at 2:17 AM, Dave M. <mil...@gmail.com> wrote: >> >>> another wild guess: have you attached the Containable behavior? >>> >>> In your AppModel: >>> public $actsAs = array('Containable'); >>> >>> -dave >>> >>> On Saturday, October 6, 2012 2:58:54 AM UTC-4, Greg wrote: >>> >>>> Sorry to keep bumping, but this is really doing my head in... >>>> >>>> The only "solution" i have is to load the data without the contained >>>> users, and then call the users with ajax after the page has loaded - which >>>> seems a bit daft to me. >>>> >>>> On Tue, Oct 2, 2012 at 10:37 PM, Greg Skerman <gske...@gmail.com>wrote: >>>> >>>>> So even after aliasing everything, the User model appears to become >>>>> unbound from the OperationParticipant model and doesn't get rebound by >>>>> containable... >>>>> >>>>> anybody got any clue? >>>>> >>>>> >>>>> >>>>> On Tue, Oct 2, 2012 at 7:54 AM, Greg Skerman <gske...@gmail.com>wrote: >>>>> >>>>>> Yeah no dice :( had tried something similar to that before. >>>>>> >>>>>> * Model "OperationParticipant" is not associated with model "OPUser"* >>>>>> >>>>>> >>>>>> On Tue, Oct 2, 2012 at 4:05 AM, lowpass <zijn.d...@gmail.com> wrote: >>>>>> >>>>>>> Just a wild guess: in the OperationParticipant model, try changing >>>>>>> the >>>>>>> alias for User. Something like: >>>>>>> >>>>>>> public $belongsTo = array( >>>>>>> 'OPUser' => array( >>>>>>> 'className' => 'User', >>>>>>> ... >>>>>>> >>>>>>> And then change the contain block to have 'OperationParticipant' => >>>>>>> array('OPUser') >>>>>>> >>>>>>> On Mon, Oct 1, 2012 at 3:05 AM, Greg Skerman <gske...@gmail.com> >>>>>>> wrote: >>>>>>> > I've been wracking my brain over this for a few hours and its >>>>>>> doing my head >>>>>>> > in. >>>>>>> > >>>>>>> > Consider the following models and associations: >>>>>>> > >>>>>>> > Operation belongsTo User, OperationType and hasMany >>>>>>> OperationParticipant >>>>>>> > OperationType hasMany Operation >>>>>>> > OperationParticipant belongsTo User, Operation >>>>>>> > >>>>>>> > if I dump out the contents of OperationParticipant in the >>>>>>> > OperationParticipants controller, I get exactly what I would >>>>>>> expect - a list >>>>>>> > of OperationParticipants and the associated list of Users. >>>>>>> Obviously User is >>>>>>> > correctly associated with OperationParticipant >>>>>>> > >>>>>>> > The problem comes when I want to call up an Operation and list the >>>>>>> users who >>>>>>> > are participating. >>>>>>> > >>>>>>> > $this->Operation->find('all', array( >>>>>>> > 'contain' => array( >>>>>>> > 'OperationType', 'User', 'OperationParticipant' => >>>>>>> array('User') >>>>>>> > ) >>>>>>> > ) >>>>>>> > ); >>>>>>> > >>>>>>> > I get >>>>>>> > >>>>>>> > Model "OperationParticipant" is not associated with model "User" >>>>>>> > >>>>>>> > If, from within the context of the Operations controller I do >>>>>>> > pr($this->Operation->**OperationParticipants->find('**all'))); I >>>>>>> get no >>>>>>> > associated data back for OperationParticipants. >>>>>>> > >>>>>>> > Adding OperationParticipants to the $uses property yields the same >>>>>>> result, >>>>>>> > no associated data. >>>>>>> > >>>>>>> > I've done deep contains before, and I cannot for the life of me >>>>>>> understand >>>>>>> > why this is acting up. >>>>>>> > >>>>>>> > >>>>>>> > Here are the associations: >>>>>>> > >>>>>>> > >>>>>>> > OperationParticipant.php >>>>>>> > >>>>>>> > /** >>>>>>> > * belongsTo associations >>>>>>> > * >>>>>>> > * @var array >>>>>>> > */ >>>>>>> > public $belongsTo = array( >>>>>>> > 'User' => array( >>>>>>> > 'className' => 'User', >>>>>>> > 'foreignKey' => 'user_id', >>>>>>> > 'conditions' => '', >>>>>>> > 'fields' => '', >>>>>>> > 'order' => '' >>>>>>> > ), >>>>>>> > 'Operation' => array( >>>>>>> > 'className' => 'Operation', >>>>>>> > 'foreignKey' => 'operation_id', >>>>>>> > 'conditions' => '', >>>>>>> > 'fields' => '', >>>>>>> > 'order' => '', >>>>>>> > 'counterCache' => true >>>>>>> > ) >>>>>>> > ); >>>>>>> > >>>>>>> > >>>>>>> > Operation.php >>>>>>> > >>>>>>> > /** >>>>>>> > * belongsTo associations >>>>>>> > * >>>>>>> > * @var array >>>>>>> > */ >>>>>>> > public $belongsTo = array( >>>>>>> > 'OperationType' => array( >>>>>>> > 'className' => 'OperationType', >>>>>>> > 'foreignKey' => 'operation_type_id', >>>>>>> > 'conditions' => '', >>>>>>> > 'fields' => '', >>>>>>> > 'order' => '' >>>>>>> > ), >>>>>>> > 'User' => array( >>>>>>> > 'className' => 'User', >>>>>>> > 'foreignKey' => 'user_id', >>>>>>> > 'conditions' => '', >>>>>>> > 'fields' => '', >>>>>>> > 'order' => '' >>>>>>> > ) >>>>>>> > ); >>>>>>> > >>>>>>> > /** >>>>>>> > * hasMany associations >>>>>>> > * >>>>>>> > * @var array >>>>>>> > */ >>>>>>> > public $hasMany = array( >>>>>>> > 'OperationParticipant' => array( >>>>>>> > 'className' => 'OperationParticipant', >>>>>>> > 'foreignKey' => 'operation_id', >>>>>>> > 'dependent' => false, >>>>>>> > 'conditions' => '', >>>>>>> > 'fields' => '', >>>>>>> > 'order' => '', >>>>>>> > 'limit' => '', >>>>>>> > 'offset' => '', >>>>>>> > 'exclusive' => '', >>>>>>> > 'finderQuery' => '', >>>>>>> > 'counterQuery' => '' >>>>>>> > ) >>>>>>> > ); >>>>>>> > >>>>>>> > >>>>>>> > OperationType.php >>>>>>> > >>>>>>> > /** >>>>>>> > * hasMany associations >>>>>>> > * >>>>>>> > * @var array >>>>>>> > */ >>>>>>> > public $hasMany = array( >>>>>>> > 'Operation' => array( >>>>>>> > 'className' => 'Operation', >>>>>>> > 'foreignKey' => 'operation_type_id', >>>>>>> > 'dependent' => false, >>>>>>> > 'conditions' => '', >>>>>>> > 'fields' => '', >>>>>>> > 'order' => '', >>>>>>> > 'limit' => '', >>>>>>> > 'offset' => '', >>>>>>> > 'exclusive' => '', >>>>>>> > 'finderQuery' => '', >>>>>>> > 'counterQuery' => '' >>>>>>> > ) >>>>>>> > ); >>>>>>> > >>>>>>> > >>>>>>> > >>>>>>> > The users model does not have the association included, Operations >>>>>>> is a >>>>>>> > plugin which may not always be there so I've not included the >>>>>>> hasMany (and >>>>>>> > there is no reason to read the data back the other way, i.e. I >>>>>>> have no >>>>>>> > requirement to get a list of Users and find their associated >>>>>>> Operations - >>>>>>> > only Operations, and find their associated users. >>>>>>> > >>>>>>> > Can anyone shed any light? >>>>>>> > >>>>>>> > -- >>>>>>> > Like Us on FacekBook >>>>>>> > https://www.facebook.com/**CakePHP<https://www.facebook.com/CakePHP> >>>>>>> > Find us on Twitter http://twitter.com/CakePHP >>>>>>> > >>>>>>> > --- >>>>>>> > You received this message because you are subscribed to the Google >>>>>>> Groups >>>>>>> > "CakePHP" group. >>>>>>> > To post to this group, send email to cake...@googlegroups.com. >>>>>>> >>>>>>> > To unsubscribe from this group, send email to >>>>>>> > cake-php+u...@**googlegroups.com. >>>>>>> >>>>>>> > Visit this group at http://groups.google.com/** >>>>>>> group/cake-php?hl=en <http://groups.google.com/group/cake-php?hl=en> >>>>>>> . >>>>>>> > >>>>>>> > >>>>>>> >>>>>>> -- >>>>>>> Like Us on FacekBook >>>>>>> https://www.facebook.com/**CakePHP<https://www.facebook.com/CakePHP> >>>>>>> Find us on Twitter http://twitter.com/CakePHP >>>>>>> >>>>>>> --- >>>>>>> You received this message because you are subscribed to the Google >>>>>>> Groups "CakePHP" group. >>>>>>> To post to this group, send email to cake...@googlegroups.com. >>>>>>> To unsubscribe from this group, send email to cake-php+u...@** >>>>>>> googlegroups.com. >>>>>>> >>>>>>> Visit this group at >>>>>>> http://groups.google.com/**group/cake-php?hl=en<http://groups.google.com/group/cake-php?hl=en> >>>>>>> . >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>> >>>> -- >>> Like Us on FaceBook https://www.facebook.com/CakePHP >>> >>> Find us on Twitter http://twitter.com/CakePHP >>> >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "CakePHP" group. >>> To post to this group, send email to cake...@googlegroups.com. >>> To unsubscribe from this group, send email to >>> cake-php+u...@googlegroups.com. >>> Visit this group at http://groups.google.com/group/cake-php?hl=en. >>> >>> >>> >> >> -- Like Us on FaceBook https://www.facebook.com/CakePHP Find us on Twitter http://twitter.com/CakePHP --- 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. Visit this group at http://groups.google.com/group/cake-php?hl=en.