在我的数据模型中,我有一个只能管理的字段。普通用户可以编辑模型中的记录并查看此特定字段,但他们不应该能够编辑它。有没有简单/干净的方法来做到这一点?我想有必要创建一个额外的admin_edit控制器操作,但是什么是“锁定”控制器中的数据字段的最佳方法?CakePHP:只允许数据字段管理员可编辑
3
A
回答
2
没有必要创建一个新的控制器动作,但您可以自行决定。请注意,您仍然可以使用同样的看法它使用$this->render("edit")
的看到:http://book.cakephp.org/view/428/render
我想你应该:
- 使用相同的控制器动作,如果这不是为用户和管理员
- 显示混乱只有当用户是管理员,并输出给其他用户
- 检查授权控制器
1
根据您的设置,这可以轻松地作为模型中的验证方法进行处理。在模型中写一个自定义函数来检查用户是否有权限。
你也可以在模型中用beforeSave()来做到这一点。如果该字段存在并且他们没有权限,请将其删除。
0
可以SIM文本输入字段请检查编辑视图中的管理员角色
if (hasRoleAdmin) {
echo $this->Form->input(...);
}
相关问题
- 1. Asp.net允许访问管理员只有
- 2. 如何只允许管理员设置管理员权限?
- 3. 允许员工通过django管理站点编辑电子邮件数据?
- 4. 设计:允许管理员编辑其他用户 - Rails
- 5. 管理员用户允许删除和编辑其他用户
- 6. WordPress的 - 允许用户编辑管理员创建的页面只有
- 7. QTreeWidgetItem可编辑只允许输入数字
- 8. 允许数字和只输入内容可编辑div按键
- 9. 创建仅显示(不可编辑)的Django管理员字段
- 10. 允许cancan Ability.rb只管理访问模型的特定字段
- 11. cakephp 3允许用户只编辑他们的个人资料
- 12. 允许buddypress组管理员添加更多管理员
- 13. 允许用户访问管理员?
- 14. cakephp编辑字段值
- 15. 如何只允许管理员查看链接
- 16. 如何只允许管理员关闭程序?
- 17. 只允许django管理员现场ID 1
- 18. 只允许管理员用户访问一个resque web界面
- 19. 在Django中只允许管理员用户访问视图
- 20. 只允许管理员在Laravel中查看页面
- 21. Excel VBA只允许管理员修改工作簿
- 22. 只有管理员允许访问wp-admin并登录?
- 23. Django管理员以表格的方式编辑字段
- 24. 控制活动管理员编辑页上字段的顺序
- 25. TreeView - 只允许编辑一些节点
- 26. 只允许某些用户编辑ASPxGridView
- 27. 只允许数字字符
- 28. 如何在angularjs中允许可编辑数字到小数
- 29. Drupal,用户配置文件:仅添加字段*可由管理员编辑
- 30. 允许用户/管理员自己更新内容管理
这很容易实现,但并不安全。 *如果*恶意用户提供包含此字段的手动HTTP POST请求,则可以编辑它。 – joni 2010-10-04 08:53:53
我正在谈论会话中的SAVED角色。如果他们自己不安全,世界上的任何一个网站都不会安全。但我想你是指POST部分本身。没有马上得到。当然你总是需要确保用户不能“保存”更多的数据。但是这必须在调用save()之前在控制器中完成。详细信息:http://www.dereuromark.de/2010/09/21/saving-model-data-and-security/ – mark 2010-10-04 22:57:07
谢谢,该博客文章似乎对我有用。 (用母语与您自己的语言交流时,感到很奇怪) – joni 2010-10-05 10:56:10