簡體   English   中英

Laravel Eloquent ORM - 是否可以設置默認的 select 列列表?

[英]Laravel Eloquent ORM - Is it possible set default select columns list?

在很多數據庫查詢中,我不需要所有數據,所以我執行以下操作

User::get(array('id', 'first_name', 'email'));

是否可以默認設置為 select ('id', 'first_name', 'email') 列。

您可以使用雄辯的查詢范圍范圍使您可以輕松地在模型中重用查詢邏輯。 要定義范圍,只需在模型方法前添加范圍

例如在您的User模型中添加此方法

public function scopeFetch($query, $columns = array('id', 'first_name', 'email'))
{
    return $query->get($columns);
}

並這樣稱呼它

User::fetch();

您可以簡單地在 model class 中定義一個 scope function。

public function scopeGetData($query)
{
    return $query->select(['id', 'first_name', 'email']);
}

你可以像這樣在你的 controller function 中調用這個 scope

User::GetData()->get();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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