想象一下我在用户模型中具有此功能:
public function loadOrderStatus(){
$this->load(['status' => function ($query) {
$query->ofTranslatedStatuses();
}]);
}
此功能对于单个模型实例(如User::first()
)正常工作
但是如何将此功能与User::all()
一起使用?
答案 0 :(得分:2)
您可以在用户模型中使用scopeQuery
public function scopeStatusAll($query)
{
return $query->with(['status' => function ($query) {
$query->ofTranslatedStatuses();
}]);
}
致电
User::statusAll()->get();
或者您可以在用户模型中放置一个静态函数
public static function statusAll()
{
$users = User::all();
return $users->load(['status' => function ($query) {
$query->ofTranslatedStatuses();
}]);
}
致电
User::statusAll();