CakePHP:删除用户会删除通过belongsTo关联的用户
我希望能够删除用户,但用户有一个管理员:CakePHP:删除用户会删除通过belongsTo关联的用户,cakephp,cakephp-1.2,Cakephp,Cakephp 1.2,我希望能够删除用户,但用户有一个管理员: var $belongsTo = array( 'Manager' => array( 'className' => 'User', 'foreignKey' => 'manager_id', 'conditions' => '', 'fields' => '', 'order' =>
var $belongsTo = array(
'Manager' => array(
'className' => 'User',
'foreignKey' => 'manager_id',
'conditions' => '',
'fields' => '',
'order' => ''
),
);
每当用户被删除时,它的所有“子项”也会被删除
例如,假设我删除了用户A。用户A是用户B、C和D的管理者。删除A时,B、C和D也是如此,因为它们的管理者id都是A
所以我的问题是——这应该发生吗?有什么方法可以防止这种情况发生吗
谢谢 阅读这本书,这是你想要的行为,你可以通过添加
'dependent' => false,
到关联配置数组
请参阅并搜索本页上的“依赖项”
我建议您使用2.0,如果它是一个新项目,1.2现在已经有很长一段时间不推荐使用了。阅读本书,这是预期的行为,您可以通过添加
'dependent' => false,
到关联配置数组
请参阅并搜索本页上的“依赖项”
我建议您使用2.0,如果它是一个新项目,1.2现在已经很长时间不推荐使用了。这是一个ACL问题-完全出乎意料。由于我们的用户使用管理器以树形结构操作,因此用户有一个lft
和rght
字段,该字段仅在afterSave
中更新。简单的解决方案是通过将用户的lft
和rght
设置为0
来分离用户,但经过深入思考,我将他们的manager\u id
设置为NULL
,并将其保存,以便树自身重新组织(通过afterSave
)
哇。这就是问题所在。这是一个ACL问题——完全出乎意料。由于我们的用户使用管理器以树形结构操作,因此用户有一个lft
和rght
字段,该字段仅在afterSave
中更新。简单的解决方案是通过将用户的lft
和rght
设置为0
来分离用户,但经过深入思考,我将他们的manager\u id
设置为NULL
,并将其保存,以便树自身重新组织(通过afterSave
)
哇。这就是问题所在。谢谢您的快速回复。dependent
键似乎只适用于hasOne
和hasmall
关系。这不是一个新项目:P我同意。我正在使用2.1作为我的辅助项目,我发现自己笑得更多。既然删除是针对hasOne和hasMany的,那么你应该将这种关系重新表述为其他关系。hasMany=>manageduser。。这应该与burzum的评论配合起来谢谢你的快速回复。dependent
键似乎只适用于hasOne
和hasmall
关系。这不是一个新项目:P我同意。我正在使用2.1作为我的辅助项目,我发现自己笑得更多。既然删除是针对hasOne和hasMany的,那么你应该将这种关系重新表述为其他关系。hasMany=>manageduser。。这应该符合burzum的评论