【发布时间】:2018-11-09 17:51:03
【问题描述】:
我希望用户仅在登录时发表评论。否则会出现一个masege '您必须登录才能发表评论'。如果我登录它可以工作,如果不是它不只是重定向回来! 我解决了。问题是 PostCommentsController 位于管理员中间件中,您必须登录才能查看您是否是管理员。如果你没有登录重定向到索引。
控制器:
public function store(Request $request)
{
if (Auth::check()) {
$user = Auth::user();
$data = [
'post_id' => $request->post_id,
'author' => $user->name,
'email' => $user->email,
'body' => $request->body
];
Comment::create($data);
$request->session()->flash('comment_success','Your comment have been submited and is waiting moderation');
return redirect()->back();
} else {
$request->session()->flash('login','You must be logged in to post a comment');
return redirect('/login')->back();
}
}
【问题讨论】:
-
我只是想澄清一下,如果用户没有登录,用户会被重定向到登录页面吗?
-
是的,我的 else 语句中有 plus ->back() 。所以我改变了 return redirect('/login');但不起作用。如果我没有登录,则重定向回有几个帖子的索引页面。
标签: php laravel authentication comments