我有帖子,帖子有评论。
我需要做的是授权评论作者和帖子作者删除同一帖子上的评论。
Idea是被评论的帖子的作者能够从他的帖子中删除不需要的评论,评论的作者也能够删除他留下的评论。
我看到你可以将多个变量传递给Gate
外观。
所以我想我可以写这样的政策:
class CommentPolicy
{
public function deleteComment(User $user, Comment $comment, Post $post)
{
//mumbo jumbo goes here
}
}
但是好的,你对该政策的逻辑部分有什么看法? 我想的可能就是这样:
return ($user->id === $comment->user_id || $user->id === $post->user_id);
或者也许:
$check = array ($user->id === $comment->user_id, $user->id === $post->user_id);
if (($check[0] = 0) && ($check[1] = 0)){
return 0;
}else{
return 1;
}
但这是合法的吗?我的意思是php可以这样返回值吗?如果不是,你如何检查这些条件?