2013-03-13 2 views
0

Что я хочу сделать, это добавить отношение к моей сводной таблице. У меня есть уникальный сценарий, где моя сводная таблица нуждается в собственном соотношении has_one в таблице ролей. Кто-нибудь видит проблему с созданием модели Eloquent специально для сводной таблицы? Кроме того, если я должен был создать эту модель, есть ли способ, которым я мог бы вернуть модель?Laravel 3: Есть ли способ создать яркую модель для вашей многоголосной сводной таблицы?

$user = User::where('id', '=', 1); 
$pivot = $user->hasmanyexample()->pivot(); 

Я специально хотел бы быть в состоянии сделать следующее:

$user = User::where('id', '=', 1); 
$pivot = $user->example()->pivot(); 

// class Example_User 
// public function role() { return $this->has_one('Role', 'role_id'); } 
$role = $pivot->role(); 

ответ

4

сначала вы должны сделать модель из Pivot, в моем случае, у меня было 3 модели

  • выпуск-> has_many_and_belongs_to ('Формат);
  • Формат-> has_many_and_belongs_to ('Edition);

сводная таблица генерироваться будет называться edition_format, когда я сделал модель, вы должны сначала создать каталог Edition, и в этой папке создать файл с именем format.php, так что вы бы следующее:

-Применение/модель/выпуск/format.php

, то вы должны изменить имя таблицы, поскольку Laravel ищет множественное число (edition_formats) и соотношению потребностей edition_format, так что вы должны в дальнейшем добавить :

class Edition_format extends Eloquent 

{

public static $table = "edition_format"; 


/* whatever you want */ 

}

Тогда вы можете назвать это так: Edition_format :: найти (1);

+0

Удивительный ответ прямо здесь. –

 Смежные вопросы

  • Нет связанных вопросов^_^