Я пытаюсь получить точечную нотацию, работающую в пакете Jenssegers MongoDB для Laravel. По этому вопросу уже реализовано:
Но, похоже, не работает в последней версии.
protected $fillable = ['title', 'some.data'];
Не работает Но если я все это открою, все будет хорошо.
protected $guarded = [];
Так что это работает, не уверен, что эта функция все еще есть, или мне нужно предварительно отфильтровать мои поля сейчас?
Вложенные поля в настоящее время не поддерживаются в $fillable
,
К сожалению, это означает, что вы должны сделать это вручную. Есть два пути:
Если у вас есть встроенный Some
модель, вы можете установить $ fillable для этого, создать / заполнить его новыми данными, а затем присоединить его к родительской модели.
Если у вас нет / вы хотите иметь отдельную модель для своего поддокумента, вам необходимо определить, например, $someFillable = ['data'];
и используйте это, чтобы отфильтровать ваши новые $ некоторые данные, прежде чем вручную устанавливать их в модели. Вы можете просто скопировать, как Eloquent делает это в своем fill
метод.
Других решений пока нет …