Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 10.10.2016 09:26:51

Невозможно добавить значение столбца при регистрации

Доброго времени суток!

Вот, в RegisterController, добавлено поле avatar:

protected function create(array $data) {
        return User::create([
                    'name' => $data['name'],
                    'email' => $data['email'],
                    'password' => bcrypt($data['password']),
                    'avatar' => 'assets/img/default/avatar.png', //аватар по умолчанию
        ]);
    }

И вот такая ошибка:

"SQLSTATE[HY000]: General error: 1364 Field 'avatar' doesn't have a default value (SQL: insert into `users` (`name`, `email`, `password`, `updated_at`, `created_at`) ..."

Никто не подскажет, что с этим можно сделать, или как обойти? Цель простая - заполнение поля значением по умолчанию.

Изменено Androbim (10.10.2016 09:27:39)

Не в сети

#2 10.10.2016 09:33:18

Re: Невозможно добавить значение столбца при регистрации

Нужно в модель User, массив $fillable добавить поле avatar.

https://laravel.ru/docs/v5/eloquent#массовое

Не в сети

#3 10.10.2016 09:59:25

Re: Невозможно добавить значение столбца при регистрации

Большое спасибо!

Не в сети

#4 01.11.2016 09:41:32

Re: Невозможно добавить значение столбца при регистрации

А такой еще *ленивый* вопрос. Наверное, применять это имеет смысл только для тех полей, которые пользователь редактирует из фронтэнда? Ну, скажем, в админке этим занимаешься ты сам, и другим туда хода нет.

Не в сети

#5 01.11.2016 09:44:20

Re: Невозможно добавить значение столбца при регистрации

Что "это"? Массовое заполнение (Mass Assignment)?

Не в сети

#6 01.11.2016 11:51:34

Re: Невозможно добавить значение столбца при регистрации

Сорри, так точно. Помещать поля в $fillable.

Не в сети

#7 01.11.2016 12:28:51

Re: Невозможно добавить значение столбца при регистрации

Я везде использую массовое заполнение. ) Просто некоторые вещи нужно проверять перед тем, как записывать в базу на случай, если "хакеры" решат изменить какое-либо поле в своем профиле (установить флаг платной подписки, например).

Изменено AlexeyMezenin (01.11.2016 12:34:29)

Не в сети

#8 01.11.2016 12:34:56

Re: Невозможно добавить значение столбца при регистрации

Спасибо :-)

Не в сети

Подвал раздела