【问题标题】:user_id condition on all models [duplicate]所有模型上的 user_id 条件[重复]
【发布时间】:2014-04-06 18:20:34
【问题描述】:

我正在尝试开发一个有多个用户的应用程序。每个用户都有自己的客户、发票、设置、个人资料等。

默认情况下,CakePHP 生成的控制器/模型/视图将显示所有用户的所有客户端、发票等。

所以我必须编辑添加、查看、索引、编辑和删除操作,以便用户只能查看、编辑、添加、删除他们自己的客户、发票、设置、配置文件等。

我想知道是否有更简单更通用的方法来做到这一点。就像在 AppController.php 或 AppModel.php 中做一样,这样就不需要为每个 Controller/Model/View 做。

或者如果因为 hasMany、belongsTo 等属性设置正确,CakePHP 可以自动执行此操作。

【问题讨论】:

  • 也许this 有帮助。您可以将 user_id 过滤器添加到模型 find() 以执行特定操作,从而仅显示该用户所属的记录等。 PS:您应该始终提及您正在使用的确切 cakephp 版本。
  • 是的,这就是我一直在做的。但是我必须为我所做的每一个新控制器和动作都这样做。我的问题是是否有任何更简单的“更漂亮”的方式来做到这一点。最好的方法是 cake 可以根据 hasMany、belongsTo 等参数自动执行此操作。
  • 好吧,你可以写一些东西的行为。除此之外,您可能需要提供(更多)代码才能获得此问题的更详细答案。
  • 似乎行为会起作用。谢谢!
  • 不是每个模型都有$order$conditions 这样的公共变量吗?我找不到任何关于此的文档,甚至没有关于我知道它存在的 $order 变量!如果我错了,请纠正我!

标签: php cakephp cakephp-2.4


【解决方案1】:

同样的问题已经有人问过了,我在这里详细回答了:Setting default model conditions

它还包括一个行为示例。

【讨论】:

  • 如果是骗子,请投票关闭。不要添加说明这是骗子的答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-10-11
  • 1970-01-01
  • 1970-01-01
  • 2020-08-27
  • 1970-01-01
  • 2017-10-23
相关资源
最近更新 更多