Saturday, June 1, 2013

Re: Contain with an associated plugin

That did it, Cricket! I was trying to do contain 'Users.User'. As soon as I removed the 'Users', it worked. I didn't modify any of the plugin files. The CakeDC plugin is supposed to take care of the association in its model, so the only place I specified an association was in the Group model. I do have some 'Users' routes, but they have to do with login, register, etc. That shouldn't affect the Group model on association.

Thanks again for your help!

On Friday, May 31, 2013 10:33:05 PM UTC-5, Larry Lutz wrote:
I'm having difficulty getting containable to work when the contained model is in a plugin. Specifically, I have a Group model that is associated with a Users (CakeDC) plugin. Normally, you just prefix the plugin model name with the plugin name such as Users.User, but it seems that the Containable behavior can't deal with that. Specifically, I've tried

$this->set('group', $this->Group->find('first',
    array(
       'conditions' => array('Group.slug' => $slug),
       'fields'     => array(
                             'Group.id',
                             'Group.name',
                             'Group.slug',
                             'Group.description',
                         ),
                         'contain'    => array(
                             'Users.User' => array(
                                 'conditions' => array('Users.User.group_id' => 'Group.id'),
                                 'fields'     => array(
                                     'Users.User.id',
                                     'Users.User.username',
                                     'Users.User.slug',
                                     'Users.User.email',
                                     'Users.User.active',
                                     'Users.User.last_login',
                                 ),
                                 'order'      => array('Users.User.username' => 'asc'),
                             ),
                         ),
                    )
                ));


Unfortunately, that results in this error:

Error: UsersController could not be found.

I've also tried it without the "Users." prefix, but that yields the same error. I have this in my Group model:

public $hasMany = array(
            'User' => array(
                'className'    => 'Users.User',
                'foreignKey'   => 'group_id',
                'dependent'    => FALSE,
            )
        );


Can anyone tell me how to handle plugin models within a contain.

--
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?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

No comments: