У меня есть таблица базы данных MySQL 5.7 со столбцом, где у каждой записи будет массив внешних идентификаторов JSON, а не обычный способ.
[1,2,3,4,5]
Есть ли способиспользовать это в пользовательских отношениях Eloquent hasMany? Чтобы я мог сделать $myModel->related
и получить коллекцию связанных моделей?
Я всегда могу использовать метод доступа:
protected $casts = ['relatedModelIds' => 'array'];
protected function getRelatedAttribute()
{
return RelatedModel::whereIn('id', $this->relatedModelIds)->get();
}
, но он не очень эффективен и допускает только чтение.
Есть идеи? К сожалению, структура базы данных не может быть легко изменена.