Php Laravel-NoSQL无限制字段更新

Php Laravel-NoSQL无限制字段更新,php,mongodb,laravel,Php,Mongodb,Laravel,我正在为客户开发定制CRM 需要有无限数量的字段。因此,我在MongoDB中设置了一个包含所有字段及其名称的基本模式 我正试图做到这一点,当我在Laravel中修补customer对象时,它会遍历所有字段并自动更新它们。以下是我到目前为止的情况: $customer = Customer::find($id); $fields = CustomerField::all(); foreach($fields as $field){ $fieldName = $field->

我正在为客户开发定制CRM

需要有无限数量的字段。因此,我在MongoDB中设置了一个包含所有字段及其名称的基本模式

我正试图做到这一点,当我在Laravel中修补customer对象时,它会遍历所有字段并自动更新它们。以下是我到目前为止的情况:

$customer = Customer::find($id);
$fields = CustomerField::all();
foreach($fields as $field){
          $fieldName = $field->name;
          $customer->$fieldName = $request->input($fieldName);
}
$customer->save();
虽然这似乎不起作用


我不想使用fillable属性,因为我需要这些字段具有灵活性

查看
guarded
属性的文档,您可以在其中保护您知道名称的字段。也许它可以帮助您使用
$customer->update($request->all())简化代码。嘿,这要求所有这些字段都位于
filleble
属性中。我尝试了一下,但这似乎也不起作用。看起来我的原始代码正在工作。我有重复的字段名,这与
$request
中的值有冲突。不过,如果代码更简单一些,那就更好了。您只能使用
filleble
guarded
。如果您都在模型上声明了,那么它可能无法按预期工作。这就是报告的建议。我还假设您正在使用一个类似于抽象与MongoDB的连接的包,如果没有,请查看它。