0

这是它的样子:

网址:/Category/Edit/(category.id)

控制器:

从类别加载信息并将其放入编辑表单 - >提交表单然后你有:

$this->Category->id=$id;

$this->Category->save($this->request->data);

因为它从 url 获取 id,所以它可以很容易地更改为属于另一个用户的 id 我如何确保它是否执行检查该类别是否属于经过身份验证的用户。

已建立关联,用户->类别(一对多)

但是在写这篇文章的时候,我可能发现了一些东西,我可以在模型中使用 beforeSave 如果你知道如何更好地做到这一点,请告诉我。

谢谢

4

1 回答 1

0

一些东西:

  1. id 应该在 POSTed 数据中,而不是在提交的 URL 中
  2. 使用安全组件来帮助防止表单被篡改
  3. 您的 URL 示例应该是 '/categories/edit/(category.id)'
  4. 在你的模型中构建一个方法,而不是仅仅使用save()Controller 中的默认值。在您的方法中,您可以检查以确保类别的所有者(基于user_id字段)与登录Auth用户的所有者匹配。
于 2013-03-25T03:13:59.067 回答