Mysql
 sql >> Database >  >> RDS >> Mysql

Relazione di entità identiche multiple

Solo una soluzione alternativa, ma dovrebbe funzionare. In attesa di un modo più dolce

Dal momento che in pratica vuoi riempire products e product_attributes tabelle puoi impostare una nuova relazione in questo modo

Tabella dei prodotti:

$this->hasMany('ProductsAttributes', [ /* configure keys here */ ]);

E modella i tuoi dati in questo modo

[
    'type_id' => '12',
    'name' => 'Audi',
    'thumbnail' => '',
    'image' => '',
    'products_attributes' => [
        [
            'attribute_id' => '9',
            'amount' => '2',
            'value' => '1',
            'information' => 'front'
        ],
        [
            'attribute_id' => '9',
            'amount' => '2',
            'value' => '1',
            'information' => 'rear'
        ]
    ]
]

Questo creerà una nuova riga in products e due nuove righe in product_attributes