У меня есть модель, которая настроена так,
class Project extends Eloquent {
public function projectmanager(){
return $this->belongsTo('User', 'project_manager');
}
}
Я запускаю редактирование строки в моей базе данных проектов, и столбец project_manager возвращает идентификатор пользователя, который является менеджером проекта, где я хочу получить информацию о пользователе для этого идентификатора — я сохраняю свои данные следующим образом,
$project = Project::where('id', '=', $id)->get();
$project->name = Input::get('name');
$project->description = Input::get('description');
$project->total_cost = Input::get('cost');
$project->start_date = Input::get('start_date');
$project->finish_date= Input::get('finish_date');
$project->run_number_days = $this->get_days_between_two_dates(Input::get('start_date'), Input::get('finish_date'));
$project->num_days_from_year_start = $this->get_days_between_two_dates("2014-01-01", Input::get('start_date'));
$project->project_manager = Input::get('project_manager');
$project->save();
return $project
;
Вместо того, чтобы возвращать то, что я на самом деле сохранил, как я могу вернуть строку плюс все данные о ее связях?
Вы можете динамически загружать связанные модели
$project->save();
$project->load('projectmanager');
return $project;
Других решений пока нет …