SQLSTATE [HY000]: общая ошибка: 1364 Поле «роль» не имеет значения по умолчанию - PullRequest
0 голосов
/ 26 октября 2018

Я попытался добавить 2 столбца , что означает ' role ' и ' status '. ' role ' равно varchar , а ' status ' равно логическое в пользователь модель.

после миграции все в порядке, и базы данных также отображают оба столбца.

Я уже добавляю роль и статус также показывает мне SQLSTATE [HY000]: общая ошибка: 1364 Поле «роль» не имеет значения по умолчанию

User.php

protected $fillable = [
    'name', 'email', 'password', 'role', 'status',
];

}
protected $hidden = [
    'password', 'remember_token',
];

}

user table structure

Ответы [ 5 ]

0 голосов
/ 26 октября 2018

Вы получаете эту ошибку, потому что значение, которое вы пытались сохранить для $user->role, равнялось null, а поле обязательно для заполнения (не обнуляемо) в базе данных , а не имеет default (используется по умолчанию при отправке null).

Возможные решения:

  • Сделать роль обнуляемой в базе данных
  • установить $user->role = 'somevalue' перед $user->save() (даже пустая строка '' будет работать)
  • Установить значение по умолчанию для столбца в базе данных
0 голосов
/ 26 октября 2018

add role и status в вашей User модели

User.php

protected $fillable = [
   'role','status'
];

, это позволит вам добавить данные вrole и status столбец в вашей базе данных.

0 голосов
/ 26 октября 2018

добавить эти заполняемые поля в вашу модель в создаваемой операции, тезисные поля могут быть заполнены

protected $fillable =[...,'role','status'];

вы получаете сообщение об ошибке, так как оно по умолчанию None, поэтому эти поля обязательны для заполнения

0 голосов
/ 26 октября 2018

Добавить Заполняемый или защищенный в вашем файле модели

protected $guarded = [];

0 голосов
/ 26 октября 2018

Добавить 'role' и 'status' в массив $ $ fillable для User.php.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...