0 レビュー
1 回答
php-部門ごとにタスクを数える
- idを含むUsersというテーブルがあります。 department_idおよびその他の部門属性。
- idなどを含むdepartmentsというテーブルがあります 部門の属性。
- id complated_atを持つtasksというテーブルがあります
およびuser_id
各部門で完了したタスクの数を知りたい
DepartmentController
{-コード-1}
index.vue
{-コード-2}
助けてください...
わからない
0
レビュー
答え :
解決策:
タスクモデルを作成しましたか?あなたはすでにDepartmentのためにそれを行っているようです。タスクモデル( https://laravel.com/docs/8.x/eloquent )を作成する場合、タスクと部門の間に1対多の関係を作成し、カウント方法を使用できますこのようなもの:
$departments = Department::where('x', 'x')->withCount(['tasks as completed_tasks' => function(Builder $query){
$query->whereNotNull('completed_at');
}])->get();
その後、 $ departmentsコレクションにcompleted_tasks属性として返されます。
ユーザーとタスクの間に関係を作成することもメリットがあるようです。そのため、-> join('users'、'users.id'、'='、'tasks.user_id')を使用する必要はありません。クエリ。
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。