Wyświetla mi się taki błąd
SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'translation' cannot be null (SQL: insert into `translations` (`translation`, `updated_at`, `created_at`) values (?, 2019-12-01 12:35:42, 2019-12-01 12:35:42))
Model
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Translation extends Model
{
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'id','translation'
];
}
Widok - formularz
@extends('template')
@section('title')
@if (isset ($title))
{{ $title }}
@endif
@endsection
@section('content')
<div class="container">
<h2>Create new posible translation</h2>
<form action="{{ action ('TranslationController@store')}}" method="POST" role="form">
<input type="hidden" name="_token" value="{{ csrf_token() }}"/>
{{-- Zabezpieczenie formularza przed nieodpowiednim dodawaniem nowego języka --}}
<div class="form-group">
<label for="translation">New translation name</label>
<input type="text" class="form-control" name="translation" />
</div>
<input type="submit" value="Add translation"class="btn btn-primary"/>
</form>
</div>
@endsection('content')
Controller
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\Translation;
use App\Repositories\TranslationRepository;
class TranslationController extends Controller
{
public function index( TranslationRepository $translationRepo ){
$translations = $translationRepo->getAll();
return view('translations.list',["translations"=>$translations,
"footerYear"=>date("Y"),
"title"=> "Translations list" ]);
}
public function create(){
return view('translations.create',[ "footerYear"=>date("Y")]);
}
public function store(Request $request){
$translation = new Translation;
$translation->translation = $request->input('translation');
$translation->save();
return redirect()->action('TranslationController@index');
}
}
Czy może mi ktoś wytłumaczyć skąd ten błąd. I dlaczego dodaje mi puste pole jak ustawię właściwość null w bazie danych?