Kulaxyz
@Kulaxyz
Могу лучше

Почему не работает $fillable при вызове create()?

protected $fillable = [
        'rfid', 'name', 'phone', 'balance', 'email', 'identity_document', 'password', 'verified', 'avatar',
    ];

Вот RegisterController
$values = [
            'name' => $data['name'],
            'email' => $data['email'],
            'phone' => $data['phone'],
            'password' => Hash::make($data['password']),
            'identity_document' => 'storage/images/documents/'.$fileName,
        ];
        return User::create($values);

Вот какую ошибку получаю:
SQLSTATE[HY000]: General error: 1364 Field 'identity_document' doesn't have a default value (SQL: insert into `users` (`name`, `email`, `phone`, `password`, `updated_at`, `created_at`) values (Yurii Kulaxyz, kulaxyFEDGz13@gmail.com, +357939606674, $2y$10$/VONPcRE2.FQ1my1hM1LiOwtU.oWm4rotpY0JNHMU3DkW./1d5WnO, 2019-12-27 15:52:44, 2019-12-27 15:52:44))

При выводе массива $values получаю все корректные данные, однако, create игнорирует поле identity_document.
  • Вопрос задан
  • 80 просмотров
Решения вопроса 1
Kulaxyz
@Kulaxyz Автор вопроса
Могу лучше
Разобрался. Проблема была в том, что я использую "mutator method" setIdentityDocumentAttribute($value);
Который не был корректно написан.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы