Laravel 5.1 - 质量可分配字段,仅在创建时

时间:2016-01-15 14:53:11

标签: laravel model laravel-5 mass-assignment

我有一个包含一些$ fillable,mass-assignable字段的模型。

但是,某些字段只能在创建时进行批量分配,而不是在更新时。

这样做的正确方法是什么?

感谢。

2 个答案:

答案 0 :(得分:0)

您可以尝试覆盖模型上的getFillable

public function getFillable()
{
    if ($this->exists) {
        // modify the fillable or return a different fillable array
    }

    return $this->fillable;
}

答案 1 :(得分:0)

如果您不想重载getFillable()

class MyModel extends Eloquent
{
    public function create(array $attributes = []) {
        $this->fill($attributes);
        $this->protected_attriute = $attribute['protected_attribute'];

        return $this;
    }
}