Я изучаю красноречивые отношения и хочу создать пост для конкретного пользователя. Я хочу добавить User_Id
в форме создания
Ниже приведены мои фрагменты кода:
@extends('layouts.app')
@section('content')
<div class="container">
<form method="post" action="{{route('articles.store')}}">
@csrf
<input type="hidden" name="user_id" value="{{ Auth::user()->id }}">
<div class="form-group">
<label>Başlık</label>
<input class="form-control" name="title" placeholder="Başlık">
</div>
@if($errors->has('title'))
<span class="text-danger">
{{$errors->first('title')}}
</span>
@endif
<div class="form-group">
<label>Post İçeriği</label>
<textarea class="form-control" name="body" placeholder="İçerik" rows="3"></textarea>
</div>
@if($errors->has('body'))
<span class="text-danger">
{{$errors->first('body')}}
</span>
@endif
<button type="submit" class="btn btn-primary">Kaydet</button>
</form>
</div>
@endsection
и моя модель статьи такая;
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Article extends Model
{
protected $fillable=[
'title','body','user_id'
];
public function user()
{
return $this->belongsTo('App\User');
}
}
А вот и мой контроллер;
public function store(ArticleRequest $request)
{
Auth::user();
$article = new Article();
$article -> title=$request->get('title');
$article -> body=$request->get('body');
$article->save();
return redirect()->route('articles.index');
}
Но в конце я получаю ошибку ниже:
SQLSTATE[HY000]: General error: 1364 Field 'user_id' doesn't have a
default value (SQL: insert into `articles` (`title`, `body`, `updated_at`,
`created_at`) values (Merhaba, Bu post id değeri 1 olan user tarafından
yazıldı., 2018-05-03 06:55:45, 2018-05-03 06:55:45))