Wednesday, July 17, 2013

Retrieving data from belongs to related model

Hello,


I wonder how can I retrieve data from belongs model to other controller:

Models linking:

Course (id, name)
Class (id, class_number, course_id)
User (id, username, password)
ClassMembership (id, user_id, class_id)


Course hasMany Class
Class hasMany ClassMembership
User hasMany ClassMembership
ClassMembership belongsTo (Class, User)



From UsersController  how can i retrieve Class.class_number and Course.name?


User->find()  return ClassMembership data only not the belongsto related
$this->User->ClassMembership->recursive = 2; //dont work



I have done this way to retrieve Course and Class data  from ClassMembership Controller:


      $this->ClassMembership->Class->virtualFields['description'] = 'CONCAT(Course.name, \' - (Class: \', Class.class_number, \')\', \' - (\', Class.date, \')\' ) ';
       
        $classmembership = $this->ClassMembership->Class->find('list', array(
            'fields' => array('Class.id', 'Class.description'),
            'contain' => array('Course')
        ));

is there better way?







--
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 unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

No comments: