1
私は数日間は頑張っていますが、うまく動作しません。Laravelコレクションを関係数で並べ替え
ここでは、LaravelモデルのTestとQuestion、Questionモデルの内部にtest_idプロパティがあります。私は、test_id =与えられたテストのidで存在する質問の数でテストコレクションをソートしたい。
私は
$tests = Test::select(
array(
'*',
DB::raw('(SELECT count(*) FROM questions WHERE test_id = id) as count_questions'))
)->with('questions')->orderBy('count_questions','desc')->paginate(5);
と
$tests = Test::has('questions', '>', 3)->with('questions')->get()->sortBy(function($test)
{
return $test->questions->count();
});
の両方を試してみましたが、結果は同じで、コレクションがソートされていないです。
私が$ test-> questions-> count()をエコーしようとすると、私はjson応答を使用します。私はすべてのテストのための質問の数を取得します。