我正在尝试制作博客系统,但显然某些群组中的某些用户应该只能编辑/删除自己的帖子/评论。我将如何在CakePHP中执行此操作?我按照手册的基本Acl指南来设置我当前的Auth系统。
答案 0 :(得分:0)
假设您有一个Post和Comment模型,并且user_id通过$ this-> Auth-> ...对象存在,您可以在模型中定义一个通用方法:
function allowUserPost($user_id, $post_id) {
// Then check if this $user_id owns the $post_id
// if true, return true, if false, return false
}
在您的控制器中:
function deletePost($post_id) {
if($this->Post->allowUserPost($user_id, $post_id) {
// Go ahead, delete
} else {
// Deny
}