2016-05-20 4 views
-1

私は自分のプロジェクトの適切な関係を設定する助けが必要です。Eloquentリレーションシップを設定するには、他のリレーションシップタイプを使用する必要がありますか?

私がそれを比較できる最も良い方法は、学生の時間割を検討することです。

多くのクラスとタスクをそれぞれのクラス内に持つことができるようにするには、ユーザーが必要です。ただし、これらのタスクはユーザーに直接リンクする必要があります。 $ user-> tasks()を呼び出して、各$ user-> periodを経由するのではなく、すべてのタスクを取得できるようにしたい。ユーザーには多くの期間があり、各期間には多くのタスクがあるが、ユーザーに直接属しています。

提案がありますか?テーブル構造に多相関係を使用する必要がありますか?

ありがとうございます。

答えて

0

あなたが必要としているように思えるのは、「多くの人がいる」という関係です。 docs

から

「を有する多スルー」の関係が中間の関係を介して離れた関係にアクセスするための便利なショートカット を提供します。 の例では、国モデルには、 中間ユーザーモデルを介して多くのポストモデルが存在する場合があります。この例では、特定の国のすべてのブログ投稿 を簡単に収集できます。あなたのケースでは

、それは "userperiodを通じて多くのtasksを持っている" として記述することができます。

+0

コメントありがとうございます! Eloquentのドキュメントを見てみると、これはまさに私が必要としていたものです。再度、感謝します。 – matthew

関連する問題