2016-05-13 55 views
0

我有全部歸還聯合會變換對象的選擇標籤/值與API和Laravel 5

public function getFederations() 
{ 
    return Federation::all(); 
} 

所以,現在,我需要的所有聯盟的API,但我需要將其插入到一個選擇。 我只需要id,name字段。

所以,我應該做的是:

$federations->map(function ($federation) { 
    return [ 
     'text'    => $federation->name, 
     'value'    => $federation->id, 
    ]; 

但我不希望爲每個響應格式單一的功能/端點。

有沒有辦法做到這一點?

回答

0

您可以只添加值,你需要你的查詢,你想要的名字,像這樣:

public function getFederations() 
{ 
    return Federation::all(['id as value', 'name as text']); 
} 
0

我在API的應用程序做的是我利用$visible$appends陣列在我楷模。例如,假設這是您的Federation型號:

class Federation extends Eloquent 
{ 
    protected $visible = [ 
     'text', 
     'value', 
    ]; 
    protected $appends= [ 
     'text', 
     'value', 
    ] 

    public function getTextAttribute() 
    { 
     return $this->name; 
    } 

    public function getValueAttribute() 
    { 
     return $this->id; 
    } 
}