MySql Error: 1364 Field 'display_name' doesn't have default value
MySQL is most likely in STRICT mode.
Try running SET GLOBAL sql_mode=''
or edit your my.cnf to make sure you aren't setting STRICT_ALL_TABLES
or the like.
MySQL is most likely in STRICT
mode, which isn't necessarily a bad thing, as you'll identify bugs/issues early and not just blindly think everything is working as you intended.
Change the column to allow null:
ALTER TABLE `x` CHANGE `display_name` `display_name` TEXT NULL
or, give it a default value as empty string:
ALTER TABLE `x` CHANGE `display_name` `display_name` TEXT NOT NULL DEFAULT ''
All of these answers are a good way, but I don't think you want to always go to your DB and modify the default value that you have set to NULL.
I suggest you go to the app/User.php and modify the protected $fillable
so it will take your new fields in the data array used to register.
Let's say you add a new input field called "first_name"
, your $fillable
should be something like this :
protected $fillable = [ 'first_name', 'email', 'password',];
This did it for me. Good luck!