我读了很多关于可容纳的东西。老实说,我已阅读所有文档,我在我的用户控制器中工作,但有些事情并不清楚:
如果是,例如Country_ID是连接到用户和相关模型的FK吗?例如:
function index() {
$this->paginate = array(
'limit'=>10,
'order'=>'User.created DESC',
'fields'=>array('User.id','User.name', 'User.country_id', 'User.email'),
'contain'=>array(
'Post',
'Company' => array(
'Country' => array(
'fields' => array('id', 'country')
)
),
'Position' => array(
'Profession'
),
'Preference',
'Country',
'Type'
),
);
$this->set('users',$this->Paginate('User'));
}
国家/地区均已与用户和公司相关联。如何在不创建重复项的情况下定义它?
非常感谢!
答案 0 :(得分:1)
你似乎对可控制有错误的想法。它“允许您过滤和限制模型查找操作”。只要需要在find()中包含(或排除)特定的相关模型数据,就可以使用它。
例如,用户hasOne个人资料,hasMany角色,属于公司。您需要为用户获取所有角色和相关公司,但您不需要该配置文件,您可以使用$this->User->find('first',array('conditions'=>...,'contain'=>array('Role'=>array('Company'))))
它与index()或users_controller无关。
Country is both connected to User and Company. How to define this without creating duplicates?
有什么重复?