2013-03-13 55 views
0

我正在做的是添加一個關係到我的數據透視表。我有一個獨特的場景,我的數據透視表需要在角色表上擁有它自己的has_one關係。有沒有人看到創建專用於數據透視表的Eloquent模型的問題?另外,如果我要創建這個模型,有什麼方法可以讓我返回模型?Laravel 3:有沒有辦法爲您的多對多數據透視表創建一個Eloquent模型?

$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

首先你必須做出透視的模式,在我的情況我有一個3款

  • 版本 - > has_many_and_belongs_to('Format);
  • Format-> has_many_and_belongs_to('Edition);

產生將被稱爲edition_format,當我做了模型,你首先要創建一個目錄版和該文件夾中創建一個名爲format.php文件中的數據透視表,所以你將有以下:

-application /模型/版本/ format.php

,那麼你必須更改表名稱,因爲laravel查找複數(edition_formats)和關係需要edition_format,所以你必須爲以下,加:

class Edition_format extends Eloquent 

{

public static $table = "edition_format"; 


/* whatever you want */ 

}

然後就可以調用它像這樣:Edition_format ::發現(1);

+0

真棒回答就在這裏。 – 2013-03-13 15:06:11

相關問題