我尝试在一个插入一些数据对许多关系,我得到了这样那样的错误:插入数据未能对Laravel一对多的关系
SQLSTATE[HY000]: General error: 1364 Field 'article_id' doesn't have a default value (SQL: insert into `comments` (`comment`, `updated_at`, `created_at`) values (this is comment, 2017-10-12 13:14:07, 2017-10-12 13:14:07))
这里是我的路由器:
Route::post('/article/{article}/comment', '[email protected]');
这里的我的控制器:
public function save(Article $article){
Comment::create([
'comment' => request('comment'),
'article_id' => $article->id
]);
return back();
}
这里是我的形式,我用它来发布数据:
<form method="post" class="form-horizontal" action="/article/{{ $article->id }}/comment">
{{ csrf_field() }}
<div class="box-body">
<div class="form-group">
<label for="comment" class="col-sm-2 control-label">Comment</label>
<div class="col-sm-10">
<textarea class="form-control" rows="3" id="comment" name="comment"></textarea>
</div>
</div>
<div class="box-footer">
<button type="submit" class="btn btn-primary">Simpan</button>
</div>
</div>
</form>
我尝试打印我的$ article-> id,它有我的文章ID的值。但我不知道它为什么说它没有价值。谢谢。
请检查评语表 –
@AddWebSolutionPvtLtd“的article_id”字段我已经查了,我已经把一些数据手动,它工作正常。 – Ying
请将article_id字段中的默认静态值设置为: 评论:: create([ 'comment'=> request('comment'), 'article_id'=> 1 ]); –