我正在尝试让aco/aro在我的一个应用程序上运行。cakePHP教程说,当我添加一个用户时,它应该自动添加到aros表中,但它不起作用。
用户模型
class User extends AppModel {
var $name = 'User';
public $belongsTo = array('Group');
public $actsAs = array('Acl' => array('type' => 'requester'));
function beforeFilter() {
parent::beforeFilter();
$this->Auth->allowedActions = array('*');
}
public function parentNode() {
if (!$this->id && empty($this->data)) {
return null;
}
if (isset($this->data['User']['group_id'])) {
$groupId = $this->data['User']['group_id'];
} else {
$groupId = $this->field('group_id');
}
if (!$groupId) {
return null;
} else {
return array('Group' => array('id' => $groupId));
}
}
public function afterSave() {
$this->Aro->create();
$this->Aro->save(array('alias'=>$this->field('username')));
}
}这条线不是应该
public $actsAs = array('Acl' => array('type' => 'requester'));执行cakePHP魔术并自动创建ARO?
发布于 2013-03-19 02:06:56
假设您的数据库有名为'groups‘和'users’的表,我认为afterSave()中的代码是不必要的。一旦设置了$actsAs,就不应该调用任何Aro方法。
https://stackoverflow.com/questions/13793275
复制相似问题