[英]How to select specific columns with eloquent “with”
有沒有辦法在使用帶有雄辯的“with”時只選擇特定的列?
我的問題是我得到一個很長的帳戶列表,我還需要使用“與”關系來獲取他們的網站,但“網站”對象很大,這使得請求非常慢。
我試過用:
$accounts = $accounts->with('websites')->select(['account_id','url']);
並且:
$accounts = $accounts->with('websites', function($query) {
$query->select(['account_id','url']);
});
他們都沒有工作。
我在他們的文檔中沒有看到這個問題的答案,所以如果有人能與我分享,我真的很感激。 此外,如果有“with”的替代方案可以給出相同的結果,那么它也會很棒。 謝謝。
$accounts = $accounts->with([
'websites' => function($query) {
$query->select(['account_id','url']);
}
]);
嘗試定義關系中的列:
class Account
{
public function websites()
{
return $this->hasMany('App\Website')->select(['account_id','url']);
}
}
請注意,課程和關系僅用於演示目的,請嘗試在您的關系中添加->select(['account_id','url'])
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.