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 <[email protected]> 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 <[email protected]> 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
> > 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 [email protected].
> > To unsubscribe from this group, send email to
> > [email protected].
> > Visit this group at http://groups.google.com/group/cake-php?hl=en.
> >
> >
>
> --
> Like Us on FacekBook 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 [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> Visit this group at http://groups.google.com/group/cake-php?hl=en.
>
>
>

-- 
Like Us on FacekBook 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 [email protected].
To unsubscribe from this group, send email to 
[email protected].
Visit this group at http://groups.google.com/group/cake-php?hl=en.


Reply via email to