функция углового поста дает мне проблему, когда я хочу зарегистрироваться - PullRequest
0 голосов
/ 20 сентября 2018

Я хочу сделать jwt api с laravel и angular, но у меня есть проблема;когда я отправляю свои регистрационные данные на мой сервер laravel, он говорит:

Argument 1 passed to Illuminate\Database\Eloquent\Builder::create() must be of the type array, object given, called in D:\xampp\htdocs\MySiteBackEnd\vendor\laravel\framework\src\Illuminate\Support\Traits\ForwardsCalls.php on line 23

и мои данные:

{
      email : "Artin.zareie@yahoo.com"
      family  : "aa"
      name  : "aa"
      password  : "aaa"
      password_confirmation : "aaa"
      username : "a"
}   

моя внутренняя регистрационная функция:

public function signup(SignUpRequest $request)
    {
        User::create($request);
        return $this->login($request);
    }

мой код входа:

public function login()
    {
        $credentials = request(['email', 'password']);

        if (! $token = auth()->attempt($credentials)) {
            return response()->json(['error' => 'ایمیل یا رمزعبور نامعتبر می باشد .'], 401);
        }

        return $this->respondWithToken($token);
    }

и, наконец, мой класс SignUpRequest такой:

<?php

namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;

class SignUpRequest extends FormRequest
{
    /**
     * Determine if the user is authorized to make this request.
     *
     * @return bool
     */
    public function authorize()
    {
        return true;
    }

    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules()
    {
        return [
            'name' => 'required',
            'family' => 'required',
            'email' => 'required|email|unique:users',
            'username' => 'required|unique:users',
            'password' => 'required|confirmed',
        ];
    }
}

Я использую угловой 6 и laravel 5.7

1 Ответ

0 голосов
/ 20 сентября 2018

В вашем signup методе просто используйте User::create($request->all()); вместо User::create($request);

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