Ich versuche gerade, das Produktpanel im Admin-Bereich zu erweitern und scheitere daran meine Many-to-Many-Association zu laden. Wenn ich mir den Wert in der Konsole ausgeben lassen, erhalte ich als Value den Namen der Entity zurück.
Der Override der Komponente
Component.override('sw-product-detail-base', {
template,
data() {
return {
balls:1,
flavors: []
}
},
computed: {
productRepository() {
return this.repositoryFactory.create('product');
},
productCriteria() {
return new Criteria()
.addAssociation('flavors')
},
Die Extension
class ProductExtension extends EntityExtension
{
public function extendFields(FieldCollection $collection): void
{
$collection->add(
(new ManyToManyAssociationField(
'flavors',
FlavorDefinition::class,
FlavorProductDefinition::class,
'product_id',
'flavor_id'
))->addFlags(new Inherited())
);
}
public function getDefinitionClass(): string
{
return ProductDefinition::class;
}
}
Die Association der Gegenseite
(new ManyToManyAssociationField('products', ProductDefinition::class, FlavorProductDefinition::class, 'flavor_id','product_id')),