2013-04-04 40 views
2

我的「用戶」模型與「圖像」模型具有多種關係。將多個Laravel雄辯模型歸還爲JSON

只返回用戶就像「return Response :: eloquent($ user);」一樣簡單。我想返回一個JSON數組 {user:{id:...},圖像:[{id:...},{id:...}}} 或者,也許更好, {id:...,images :[{id:...},{id:...}}}

安排和運送這些模型的最佳方式是什麼?我應該

回答

10

你需要做的第一件事是確保你的模型設置正確:

class Users extends Eloquent { 

    public function images() 
    { 
     return $this->hasMany('Image'); 
    } 

} 

class Image extends Eloquent { 

    public function user() 
    { 
     return $this->belongsTo('User'); 
    } 

} 

然後在你的路線,你應該能夠做這樣的事情:

Route::any('userinfo/{$userId}', function($userId) 
{ 
    return Response::json(User::with('images')->find($userId)); 

    //or 

    return User::with('images')->find($userId)->toJson(); 
}); 
+2

幫助,謝謝。 @Eric_WVGG,檢查答案,如果它適合你,接受它。 – Rolice 2013-11-10 09:42:59