Cakephp在模型中声明关系时

时间:2011-05-21 19:37:37

标签: cakephp model cakephp-1.3

当我在Model中声明关系时 示例::

Class User extends AppModel{
var $name = 'User';
**var $hasOne = 'Myprofile';** 

 Class User extends AppModel{
  var $name = 'User';
**var $hasMany = 'Reply';**    

我必须在

中声明
Class Myprofile extends AppModel{
var $name ='Myprofile';
var $primaryKey = 'myprofileid';
**var $hasOne = 'User';**


Class Reply extends AppModel{
var $name ='Myprofile';
var $primaryKey = 'myprofileid';
 **var $belongsTo = 'User'**

是或否

另一个问题是    user{
userid
name
}
mywidget{
mywidgetid
widgetname
}
widgetuse{
widgetuseid
mywidget_id
widget_id

Class Mywidget extends AppModel{
var $name = 'Mywidget';
var $primaryKey = 'mywidgetid';
var $hasAndBelongsToMany = array(
    'Mywidget' => array(
        'className' => 'Mywidget',
        'joinTable' => 'Widgetuse',
        'foreignKey' => 'user_id',
        'associationForeignKey' => 'mywidget_id',
        'with' => 'Widgetuse',

right or not
thank you for comment

1 个答案:

答案 0 :(得分:0)

首先,停止使用“userid”和“profileid”作为主键,改为使用“id”(默认情况下)。

个人资料属于用户,用户有多个回复;回复belongsTo用户。

另一个问题是什么?