Привет, ребята, мне нужна ваша помощь.Я новичок в Laravel 5.4.Я пытаюсь добавить поле, которое является внешним ключом, но оно не добавлено, и ошибка не имеет значения по умолчанию.
Добавить представление
Тогда ошибка
Код контроллера пользователя:
public function create()
{
$branches = Branch::pluck('name', 'id');
return view('users.create', ['branches' => Branch::all()]);
}
public function store(Request $request)
{
$this->validate($request, [
'branch_id' => 'required',
'fname' => 'required',
'lname' => 'required',
'contact_number' => 'required',
'bday' => 'required',
'position' => 'required',
'status' => 'required',
'username' => 'required',
'password' => 'required'
]);
User::create($request->all());
session()->flash('success_msg', 'Employee has been added!');
return redirect('/employees');
}
Модель пользователя:
public function branch()
{
return $this->belongsTo(Branch::class);
}
Миграция пользователя:
public function up()
{
Schema::dropIfExists('users');
Schema::disableForeignKeyConstraints();
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->integer('branch_id')->unsigned();
$table->string('fname');
$table->string('lname');
$table->string('contact_number');
$table->date('bday');
$table->integer('position');
$table->integer('status');
$table->string('username');
$table->string('password');
$table->rememberToken();
$table->timestamps();
$table->foreign('branch_id')->references('id')->on('branches')->onDelete('cascade');
});
}
create.blade.php в пользователе
<div class="form-group">
<label for="branch_id">Branch: </label>
<!--{{ Form::select('branch_id', $branches, null) }}-->
<select class="form-control" name="branch_id">
@foreach ($branches as $branch)
<option value= "{{ $branch->id}}">
{{ $branch->name }}
</option>
@endforeach
</select>
</div>