Laravel模型属性默认值

时间:2017-06-25 08:45:12

标签: php laravel

我想在使用Eloquent将数据保存到数据库之前为属性设置默认值。

每次保存模型时,哈希都将是一个随机字符串,所以我真的不想在保存模型的任何地方传递它。

Model::create(['hash' => str_random(20)]);

我宁愿在下面的模型中使用它。

public function setHashAttribute($value) {
    $this->attributes['hash'] = str_random(20);
}

但是这个代码不起作用,除非我将一些值传递给create方法,从而破坏了目的。

Model::create(['hash' => 'I have to exist']);

头脑风暴我想象我可以挂钩的some method在被持久化到数据库之前被调用,我可以生成随机字符串并将其附加到hash属性。任何帮助表示赞赏。

0 个答案:

没有答案