2015-01-01 46 views
0

我已經定義的關係:Laravel雄辯的支點對象

public function positions() { 
    return $this->belongsToMany('Position', 'users_positions')->withPivot('season'); 
} 

是否有可能在清潔的方式來顯示與旋轉的物體? 例如:

"positions": [ 
      { 
       "id": 1, 
       "name": "A", 
       "pivot": { 
        "user_id": 1, 
        "position_id": 1, 
        "season": 2014 
       } 
      } 
     ], 

我想獲得:

"positions": [ 
      { 
       "id": 1, 
       "name": "A", 
       "season": 2014 
      } 
     ], 
+0

通過顯示你的意思是,當你把它轉換成一個數組/ JSON? – lukasgeiter

回答

1

使用accessor

public function getSeasonAttribute() 
{ 
    return ($this->pivot) ? $this->pivot->season : null; 
} 

然後你就可以訪問它,就像其他屬性:

$position = $someModel->positions->first(); 
$position->season; 

如果您還需要在toArray/toJson輸出,然後在你的模型使用:

protected $appends = ['season'];