Laravelでelomequentを使用して同じ2つのテーブルの多くの関係にさまざまな関係を作成するのですか
-
21-12-2019 - |
質問
私は2つのテーブルの「ユーザー」と「コンテンツ」を持っています。 ユーザーはお気に入りのコンテンツを使用できますので、Pivot Table User_Contentを使用して、ユーザーとそれらが熱心したコンテンツとの間の多くの関係を確立します。 これは大丈夫です。
ユーザーはコンテンツを購入することもできます。これは上記と同じ関係(user_content)になりますが、まったく異なるデータです。
テーブル間の関係が同じであるが、コンテンツが異なる場合の関係をどのように設定しますか。 それとも私がこれに近づいているべきですか?
解決
user_idフィールドとcontent_idフィールドを含むuser_purchaseとuser_favoriteテーブルを設定するだけです。
モデルを設定
class User extends Eloquent{
public function purchases()
{
return $this->belongsToMany('Content','user_purchase');
}
public function favorites()
{
return $this->belongsToMany('Content','user_favorite');
}
}
class Content extends Eloquent{
public function buyers()
{
return $this->belongsToMany('User','user_purchase');
}
public function favorites()
{
return $this->belongsToMany('User','user_favorite');
}
}
.
2列目は、多くの関係を確認するためのどのテーブルを示します
所属していません StackOverflow