我正在尝试使用Laravel 5.2在文章中添加问题。目前我可以使用ArticleController中的编辑功能编辑文章。我想在文章编辑视图上有一个按钮,允许用户添加问题。因此,当单击它时,我需要它将用户带到/ articles / questions / create,但它需要为它刚刚带来的文章带来ID,因此它可以自动存储在article_id字段中db表。我该怎么做,目前我可以通过在创建表单上的文本框中手动输入来存储文章ID。显然,目的是让用户不必知道文章的ID,并自动添加。
到目前为止我的创建功能: public function create(){
$questions = Question::all();
$users = User::all();
$articles = DB::table('article')->where('id', 'article_id')->get();
return view('articles/questions/create', ['question' => $questions], ['users' => $users], ['article' => $articles]);
}
目前的表格:
<h1>Create & Add Question</h1>
{!! Form::open(array('action' => 'QuestionController@store', 'id' => 'createquestion')) !!}
{{ Form::hidden(csrf_token()) }}
<div class="row col-sm-12 col-lg-12">
{!! Form::label('article_id', 'Article ID:') !!}
{!! Form::text('article_id', null, ['class' => 'large-8 columns']) !!}
</div>
<div class="row col-sm-12 col-lg-12">
{!! Form::label('title', 'Question:') !!}
{!! Form::textarea('title', null, ['class' => 'large-8 columns']) !!}
</div>
<div class="row col-sm-12 col-lg-12">
{!! Form::label('require', 'Required?') !!}
{{ Form::radio('require', 1) }} Yes <br>
{{ Form::radio('require', 0) }} No
</div>
<br>
<div class="row large-4 columns">
{!! Form::submit('Add Question', ['class' => 'button']) !!}
</div>
{!! Form::close() !!}
表单成功发布数据库,我只需要自动插入ID,以便文章可以引用它以在文章页面上显示问题。
答案 0 :(得分:0)
首先编辑以下行
$articles = DB::table('article')->where('id', 'article_id')->get();
return view('articles/questions/create', ['question' => $questions], ['users' => $users], ['article' => $articles]);
到
$articles = DB::table('article')->where('id', 'article_id')->first();
return view('articles/questions/create', ['question' => $questions, 'users' => $users, 'article' => $articles]);
现在,在上面发布的表单中隐藏字段
{!! Form::hidden('article_id', $article->id) !!}
最后访问商店方法中的文章ID。
public function store(Request $request){
$article_id = $request->article_id
}