У меня есть
Файл миграции:
public function up()
{
Schema::create('bookings', function (Blueprint $table) {
$table->bigIncrements('id');
$table->unsignedBigInteger('user_id');
$table->string('name');
$table->string('phone');
$table->boolean('wifi');
$table->string('address');
$table->text('desc');
$table->timestamps();
});
}
BookingController. php store
метод:
public function store()
{
$booking = new Booking();
$booking->user_id = 1;
$booking->name = request('name');
$booking->phone = request('phone');
$booking->wifi = request('wifi');
$booking->address = request('address');
$booking->desc = request('desc');
$booking->save();
return redirect('/bookings');
}
create.blad. php является частью флажка wifi
:
<div class="field">
<label for="wifi" class="label">Wi-Fi</label>
<div class="control">
<input type="checkbox" class="form-check" name="wifi" id="address">
<div>
</div>
Когда я пытаюсь создать запись, я получаю сообщение об ошибке:
1) Я пытаюсь сохранить значение как FALSE:
Illuminate \ Database \ QueryException SQLSTATE [23000]: нарушение ограничения целостности: 1048 Столбец 'wifi' не может быть пустым (SQL: вставить в bookings
(user_id
, name
, phone
, wifi
, address
, desc
, updated_at
, created_at
) значения (1, Dragon, 12341234,?, asdfasdfasdkf hsadfasdf , asdfasdfas, 2020-02-27 07:10:55, 2020-02-27 07:10:55))
2) И когда я установил флажок Wi-Fi (значение TRUE)
Illuminate \ Database \ QueryException SQLSTATE [22007]: неверный формат даты и времени: 1366 Неверное целочисленное значение: «включено» для столбца kaganat
. bookings
. wifi
в строке 1 (SQL : вставить в значения bookings
(user_id
, name
, phone
, wifi
, address
, desc
, updated_at
, created_at
) (1, Dragon, 12341234, on, asdfasdfasdkf hsadfasdf, asdfasdfasdfsafaa, 2020-02-27 07:17:15, 2020-02-27 07:17:15))
ОБНОВЛЕНИЕ :
РЕШЕНИЕ:
Обновление с
$booking->wifi = request('wifi');
до
$booking->wifi = request()->has('wifi');