У меня есть REST API, который содержит метод регистра.Я пытаюсь протестировать этот метод на почтальоне, но получаю сообщение об ошибке.
SQLSTATE [HY000]: общая ошибка: 1364 Поле «пароль» не имеет значения по умолчанию (SQL: вставить в * 1004Поле *
password
не может быть пустым в таблице user
, поэтому я передаю его в запрос. Но я не знаю, почему почтальон выдаёт мне эту ошибку. Это user
файл переноса таблицы:
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('family')->nullable();
$table->string('username')->nullable();
$table->string('phone')->nullable();
$table->string('degree')->nullable();
$table->integer('major_id')->nullable()->unsigned();
$table->string('field')->nullable();
$table->string('university')->nullable();
$table->string('image')->nullable();
$table->string('email')->unique();
$table->timestamp('email_verified_at')->nullable();
$table->string('password');
$table->rememberToken();
$table->timestamps();
$table->foreign('major_id')->references('majors')->on('id')->onDelete('cascade');
});
}
Это register
функция:
public function register(Request $request){
$validator = \Illuminate\Support\Facades\Validator::make($request->all(), [
'name' => 'required|max:255',
'email' => 'required|email|unique:users,email',
'password' => 'required|min:6',
'phone' => 'required',
]);
if($validator->fails()){
return $this->sendError('Validation Error.', $validator->errors());
}
$input = $request->all();
$input['password']= Hash::make($input['password']);
$user = User::create($input);
$success= $user->createToken('MyApp')->accessToken;
return $this->sendResponse($success, 'User register successfully.',$user->id);
}
Это register
route:
Route::post('register','API\Auth\AuthenticationController@register');
И, наконец, это выводпочтальона: