gpt4 book ai didi

laravel - 按关系值对集合进行排序

转载 作者:行者123 更新时间:2023-12-04 16:42:34 25 4
gpt4 key购买 nike

我想通过嵌套关系的属性对 laravel 集合进行排序。

所以我查询了所有的项目(只在项目有与当前用户相关的任务的地方),然后我想按照任务关系的截止日期对项目进行排序。

当前代码:

项目.php

public function tasks()
{
return $this->hasMany('App\Models\ProjectTask');
}

任务文件
public function project()
{
return $this->belongsTo('App\Models\Project');
}

用户 Controller
$projects = Project->whereHas('tasks', function($query){
$query->where('user_id', Auth::user()->id);
})->get()->sortBy(function($project){
return $project->tasks()->orderby('deadline')->first();
});

我不知道我是否在正确的方向上?
任何建议表示赞赏!

最佳答案

一个很好的干净的方法是使用 .运算符(operator)

$projects = Project::all()->load('tasks')->sortBy('tasks.deadline');

关于laravel - 按关系值对集合进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41189785/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com