在序列化数据时是否有办法强制口才使用mutator?我目前正在将我的应用程序转换为使用vue.js,并且在模型中计算了几个字段,我需要将其包含在序列化数据中。
Eloquent\Model - make toArray() utilize mutators
我理解泰勒为什么不尊重变异者,但是有没有办法改写这种行为?
答案 0 :(得分:1)
在返回模型之前,您可以执行此操作
$model->setAppends(['mutator_1', 'mutator_2']);
return $model->toArray();
如果你想在集合上使用它:
$collection->each(function($model) { $model->setAppends(...); });
答案 1 :(得分:0)
答案 2 :(得分:0)
这对我在laravel 8上起作用:
$model->setAppends($model->getMutatedAttributes())->toArray();
所有变异的属性都包含在上面的代码的序列化结果中