0
我知道验证通常限制不同的是加入/登录的所有行动等CakePHP默认的控制器,模型
删除的功能,但如果模型有一个默认删除()函数,它是如何在正常的完成CakePHP的方式来确保通过身份验证的用户不能删除不属于他的ID?是的,我知道我可以查找被删除的东西的user_id,并将其与Auth.Userid进行比较,但有没有更简单的方法?
我知道验证通常限制不同的是加入/登录的所有行动等CakePHP默认的控制器,模型
删除的功能,但如果模型有一个默认删除()函数,它是如何在正常的完成CakePHP的方式来确保通过身份验证的用户不能删除不属于他的ID?是的,我知道我可以查找被删除的东西的user_id,并将其与Auth.Userid进行比较,但有没有更简单的方法?
我想只有登录是默认允许的。
我不认为有一个更简单的方法,但有一定的快捷方式,你可以采取:
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 }
我们假定你是他使用POST而不是GET(这仍然是默认在大多数情况下) – mark