sql >> Base de Datos >  >> RDS >> Mysql

Relación de múltiples entidades idénticas

Sólo una solución, pero debería funcionar. Esperando una forma más de pastel

Ya que básicamente quieres llenar products y product_attributes tablas puede establecer una nueva relación de esta manera

Tabla de productos:

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

Y da forma a tus datos de esta manera

[
    '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'
        ]
    ]
]

Esto creará una nueva fila en products y dos filas nuevas en product_attributes