当模型"创建"时,Laravel 5.2没有变异属性。使用的方法

时间:2016-04-26 18:07:01

标签: laravel laravel-5 eloquent

我试图实施"自动加密"对于我的模型的密码属性,使用这样的mutator:

public function setPasswordAttribute($value)
{
    $this->attributes['password'] = Hash::make($value);
}

当我按照以下方式创建和保存模型时,这非常有用:

$user = new User;
$user->login = 'WalterSobchak';
$user->password = 'MarkItZero!';
$user->save();

但是,当我使用创建方法时:

User::create([ 'login' => 'WalterSobchak', 'password' => 'MarkItZero!' ]);

mutator没有效果,模型正在使用普通密码字段创建。

我肯定错过了一些明显的东西,但真的无法弄清楚什么是错的。

1 个答案:

答案 0 :(得分:1)

填写如此尴尬,但原因在于我的特质是" boot"其中的方法。经过小编辑后,模型变异器就像一个魅力。