У меня есть 2 таблицы, оценки и модели. Между ними есть соотношение 1: 1. Я хочу переместить названия моделей из таблицы моделей в таблицу оценок. Это будет сделано с помощью сценария, который мне придется написать самому. Эта база данных была настроена неправильно, по многим причинам мне не нужно здесь указывать. В таблице моделей есть только 2 столбца - идентификатор и имя.
Я получаю доступ к этому отношению во многих контроллерах и просматриваю все приложения:
$estimate->model_info->name
Так что я бы оставил оба Таблица моделей (без записей) и модель Model. php, сохраните старый код в контроллерах и представлениях, но новый код доступа к именам моделей будет просто:
$estimate->name
В оценке . php модель У меня есть это отношение:
public function model_info() {
return $this->hasOne('App\Models\Model', 'id', 'model_id');
}
Как я могу просто изменить это отношение в мутатор, чтобы старый способ доступа к именам моделей и новый способ работали одновременно? Я безуспешно попробовал метод обратного вызова withDefault () , он возвращает пустое значение:
public function model_info() {
return $this->hasOne('App\Models\Model', 'id', 'model_id')
->withDefault([
'name' => $this->attribute->name
]);
}
Нужно ли обновлять мой код во всех контроллерах и представлениях или, если есть более простой способ сделать это?