我正在学习在Laravel中创建论坛的教程,目前我在帖子回复中,因此可以将其添加到数据库中。
我在ForumController.php中具有此功能
public function postReply(CreateReplyRequest $request) {
$post = Post::where('slug', '=', $request['slug'])->first();
if( $post ) {
$reply = new Reply;
$reply->post_id = $post->id;
$reply->user_id = Auth::user()->id;
$reply->text = $request['text'];
$reply->save();
return redirect()->back();
}
return redirect('/');
}
这只是使我返回首页(/),并且没有对数据库添加任何答复。我不知道哪里可能出错。感谢您的帮助。
答案 0 :(得分:0)
尝试一下:
public function postReply(CreateReplyRequest $request) {
$post = Post::where('slug', $request['slug'])->first();
if( $post != null) {
$reply = new Reply;
$reply->post_id = $post->id;
$reply->user_id = Auth::user()->id;
$reply->text = $request['text'];
$reply->save();
return redirect()->back();
}
}
答案 1 :(得分:0)
感谢您的回答。我必须通过Composer从Laravel Collective安装Form软件包。我必须通过{!! Form::hidden('slug', $post->slug) !!}
来传递此子弹。感谢您的帮助。