私は3つのテーブル、すなわち1.Product 2.Categoryと3.Attributeを持ち、それぞれのカテゴリは異なる属性名を持っています。モバイルにはRAM、Processor.Allの属性名が属性テーブルに保存されています。誰かが属性値を入力したい場合、属性名はユーザーが選択したカテゴリ名に応じてProductテーブルの属性テーブルから取得する必要があります。 3つのテーブルすべてで似ているキーはCategorynameです。Laravel 5:両方のテーブルが2番目のテーブルに接続されている最初のテーブルから3番目のテーブルの列データを表示
public function categories()
{
return $this->hasMany(Category::class);
}
public function attributes()
{
return $this->hasMany(Attribute::class);
}
カテゴリーモデル::
public function products()
{
return $this->belongsTo(Product::class);
}
public function attributes()
{
return $this->hasMany(Attribute::class);
}
属性モデル:
public function categories()
{
return $this->belongsTo(Category::class);
}
どのように私は、属性を表示することができます
製品モデルを次のように
関係がありますそのカテゴリに製品を提供し、その後、
foreach($category->attributes as $attribute)
{
print_r($attribute->name);
}
は、選択されたカテゴリ名$name
print_r($category->product->name);
ですべての属性名を与えます