Общая ошибка для запроса Post, когда обязательное поле было передано в Laravel API - PullRequest
0 голосов
/ 28 октября 2018

У меня есть 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');

И, наконец, это выводпочтальона: Postman image

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...