Ótima maneira de fazer hash de senha no laravel ao criar um novo usuário

Aqui está como geralmente um programador de laravel hash uma senha ao criar um novo usuário.

$user = new User;

$user->username = Input::get('username');

$user->password = Hash::make(Input::get('password'));

$user->save();

Com Hash::make($pass), a senha será transformada em hash para uma string como esta:

$2y$08$d2srMhTuQ22nzuh.EEuwQ.QWNW5Svl.KLBqudXKPvFG/HHzE3C4VC</code>

No entanto, você pode simplificar o código para ser algo assim:

$user = new User;

$user->username = Input::get('username');

$user->password = Input::get('password');

$user->save()

Para que o código acima funcione, você precisa dizer ao modelo de usuário para hash a senha automaticamente, simplesmente adicionando este método à sua classe de modelo de usuário:

public function setPasswordAttribute($pass){

$this->attributes['password'] = Hash::make($pass);

}

No mundo laravel, o método mostrado acima é chamado de mutador, se você quiser saber mais sobre mutador em laravel. Basta verificar o link abaixo:

http://laravel.com/docs/eloquent#accessors-and-mutators