2015-04-29 5 views
6

Итак, я следую за этим angular/Laravel 5 tutorial с помощью JSON web Tokens. Я столкнулся с проблемой.Создание пользователя в Laravel 5

Вот как он говорит создать пользователя:

Route::post('/signup', function() { 
    $credentials = Input::only('email', 'password','name'); 

    try { 
     $user = User::create($credentials); 
    } catch (Exception $e) { 
     return Response::json(['error' => 'User already exists.'], Illuminate\Http\Response::HTTP_CONFLICT); 
    } 

    $token = JWTAuth::fromUser($user); 

    return Response::json(compact('token')); 
}); 

Проблема заключается в том, User::create($credentials); не шифрует пароль, значение, логины всегда терпят неудачу. Я нашел это, используя регистрацию по умолчанию Laravel.

Мой вопрос: как мне создать нового пользователя, который создает его правильным способом?

ответ

12

Вы должны сами использовать пароль, используя Hash helper class. Попробуйте следующее:

Route::post('/signup', function() { 
    $credentials = Input::only('email', 'password','name'); 
    $credentials['password'] = Hash::make($credentials['password']); 
    try { 
     $user = User::create($credentials); 
    } catch (Exception $e) { 
     return Response::json(['error' => 'User already exists.'], Illuminate\Http\Response::HTTP_CONFLICT); 
    } 

    $token = JWTAuth::fromUser($user); 

    return Response::json(compact('token')); 
}); 
Смежные вопросы