2014-09-27 3 views
0

У меня есть следующие структуры таблицы:модель отношений с красноречивым

Художники

  • идентификатор
  • имя
  • картина

запись

  • идентификатор
  • dj_id
  • producer_id

dj_id и producer_id поле в большинстве случаев не будет то же самое, но это может случиться. Поэтому я установил оба поля в качестве внешних ключей в поле artist_id.

Так что в моей модели входа, у меня есть эта функция:

public function dj() 
{ 
    return $this->hasOne('Artist', 'id', 'dj_id'); 
} 

Это на самом деле не работает. Он продолжает возвращать художника с идентификатором «1», даже если dj_id равно «5». Образец образца:

$test = Entry::find(1); 
var_dump($test->dj_id); // shows 5 
var_dump($test->dj->id); // shows 1 

Что я делаю неправильно?

ответ

0

Ok так я понял это, я должен был изменить свое отношение к DJ

return $this->belongsTo('Artist', 'dj_id', 'id'); 
Смежные вопросы