我正在尝试在Laravel的Jenssegers MongoDB包中使用点符号。根据这个问题,它已经实施:
但它似乎不适用于最新版本。
protected $fillable = ['title', 'some.data'];
不起作用。但是,如果我把它全部打开它就可以了。
protected $guarded = [];
这样可行,不确定此功能是否仍然存在,或者我现在需要手动预先过滤我的字段?
答案 0 :(得分:0)
$fillable
目前不支持嵌套字段。
不幸的是,这意味着你必须手动完成。有两种方法:
如果您有嵌入式Some
模型,则可以在其上设置$ fillable,使用新数据创建/填充它,然后将其附加到父模型。
如果您没有/想要一个完整的单独模型用于您的子文档,您必须定义例如$someFillable = ['data'];
并使用它来过滤新的$ some数据,然后在模型上手动设置它。你基本上只需要复制Eloquent在fill
方法中的表现方式。