Я использую mysql v5.7 и laravel v5.8. Я сделал функцию регистрации, используя auth, и когда я пытаюсь ее зарегистрировать, она показывает ошибку.
SQLSTATE [HY000]: Общая ошибка: 1364 Поле 'name' не имеет значения по умолчанию (SQL: insert в значения users
(email
, password
, updated_at
, created_at
) (***@gmail.com, $ 2yd4Gv C, 2020-05-25 19:53:37, 2020- 05-25 19:53:37))
он отлично работает на localhost, но показывает эту ошибку после добавления на сервер ec2.
Я изменил config / database. php
вот так
'strict' => false,
тогда я могу зарегистрироваться, но в столбцах имени нет значения.
введите описание изображения здесь
и можно поместить другие столбцы, кроме столбца имени.
Я не знаю, почему он работает на локальном сервере, но показывает ошибку на живом сервере.
Это мой код.
Пользователь. php
class User extends Authenticatable
{
use Notifiable;
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'name', 'email', 'password',
];
/**
* The attributes that should be hidden for arrays.
*
* @var array
*/
protected $hidden = [
'password', 'remember_token',
];
/**
* The attributes that should be cast to native types.
*
* @var array
*/
protected $casts = [
'email_verified_at' => 'datetime',
];
}
create_users_table. php
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string('name');
$table->string('email')->unique();
$table->timestamp('email_verified_at')->nullable();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
}
Кто-нибудь может мне помочь?