改善关系

时间:2018-05-24 11:18:35

标签: laravel view attributes entity entity-attribute-value

我试图在我的项目中创建实体属性值系统。我在Laravel工作。

我想做的是:

产品,eq。汽车可以有很多属性,

产品:汽车 颜色:红色,绿色,蓝色 类型:两厢车,轿车

我需要在我的datatbase中建立良好的关系。我的数据库:

        ChromeDriver driver = new ChromeDriver();

        driver.get("https://www.google.co.uk/");

        WebElement el =driver.findElement(By.className("gsfi"));
        el.sendKeys("hello!");

        el.clear();

        int orderNumber=1;

        el.sendKeys(String.valueOf(orderNumber));

我的关系

产品:

products
=========
id | title   | description | Price
--------------------------------------------
1  | Audi    |     Car     | 2500

attributes
==========
id | name
----------
1  | Color

attribute_values
=================
id | attribute_id | value
--------------------------
1  |       1      | Blue
2  |       1      | Green

product_attribute
=================
id | product_id | attribute_id | value_id
-------------------------------------------
1  |     1      |      1       |    1 
2  |     1      |      1       |    2

属性:

public function attributes(){
            return $this->hasMany(ProductAttribute::class, 'product_id', 'id');
    }

Product_Attribute:

public function values(){
       return $this->hasMany(AttributeValue::class, 'attribute_id');
}

我的功能是显示所有提供的值:

public function attribute(){
    return $this->belongsTo(Attribute::class, 'attribute_id');
}
public function value(){
     return $this->belongsTo(AttributeValue::class, 'value_id');
}

我得到了什么:

颜色:蓝色,绿色 颜色:蓝色,绿色

为什么两次到底?!

0 个答案:

没有答案