Mutator 不适用于批量插入

Uma*_*bar 5 php mysql mutators laravel eloquent

Order::insert($orderArray); 我正在尝试使用Ihave made a mutator在 laravel 中插入多个记录

public function setOrderDetailAttribute($value)
{
    if ($value)
    {
        $this->attributes['order_detail'] = serialize($value);
    }
}
Run Code Online (Sandbox Code Playgroud)

突变器不工作。但是当我使用Order::create($orderArray[0][0]);然后 mutator 插入单个记录时,它工作正常。我的问题是如何将 mutator 与插入功能或批量插入一起使用。

Chu*_*ung 4

当你调用 时Order::insert($orderArray);,实际上并没有触及 Eloquent。它只是代理对 Query\Builder@insert() 方法的调用。

所以我认为 mutator 不能以这种方式使用。