我知道Auth通常会限制除add / login等之外的所有操作。
但是如果一个模型在控制器中有一个默认的delete()函数,那么它是如何通常以CakePHP方式完成的,以确保经过身份验证的用户无法删除不属于他的id?是的,我知道我可以查找被删除的东西的user_id并将其与Auth.Userid进行比较但是有更简单的方法吗?
答案 0 :(得分:0)
我认为默认情况下只允许登录。
我认为没有更简单的方法,但你可以采取一些捷径:
function delete(){ if(!empty($this->data)){ $this->Model->id = $this->data['Model']['id']; if($this->Model->field('user_id') == $this->Auth->user('id'))$this->Model->delete(); } //redirect somewhere }