ユーザーとコースの間に多対多の関係があり、ピボット テーブル Users_Courses に isComplete
値が含まれていますが、各ユーザーをループしてユーザーのコースの場合は isComplete
値を取得し、各コースをループしてピボット データを取得します。
私が見つけたすべての例では、isComplete
値をループのあるクラスにマップしていますが、これはプログラムにとって非常に負担がかかるようで、あまり魅力的とは思えません。ここで私自身の質問をしています。この質問に対する答えが見つからない場合は、以下にリンクしてください。
また、私は Laravel-9 と MySQL を使用しています。
現在取得するデータ構造は次のとおりです:
リーリーEloquent でピボット値 isComplete
を取得し、これまたは同様のもののように、クラス自体のデータを取得する方法を探しています。
つまり、以下の例に示すように、ピボット テーブルの値 isComplete
を介してユーザーがコースを完了したかどうかを確認したいと考えています。 < /p>
リーリー
私の現在のコードは次のようになります:
リーリー リーリー リーリーコードでは isCompleted
と呼ばれていますが、データベースでもそう呼ばれています。これはまだ修正されていないタイプミスです: D
つまり、以下の例に示すように、ピボット テーブルの値 isComplete を使用して、ユーザーがコースを完了したかどうかを確認したいと考えています。
ドキュメントのピボットテーブル列によるフィルタリングについて読みましたか: https://laravel.com/docs/9.x/eloquent-relationships#filtering-queries-via-intermediate-table-columns
完了したコースのみが必要な場合は、リレーションシップを
と呼びます。 リーリーまたは、モデル内の完了と未完了のカスタム関係を確立することもできます。
リーリーユーザー コントローラーでは、これらを
と呼び出すことができます。 リーリー