簡體   English   中英

如何選擇具有雄辯“with”的特定列

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM