# Vue.js: Produkt OneToMany Assoziation mit CustomEntity

**URL:** <https://forum.shopware.com/t/vue-js-produkt-onetomany-assoziation-mit-customentity/66441>\
**Category:** Programmierung\
**Created:** [22. April 2020 um 17:30 UTC](https://forum.shopware.com/t/vue-js-produkt-onetomany-assoziation-mit-customentity/66441 "2020-04-22T17:30:19Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Moorleiche](https://avatars.discourse-cdn.com/v4/letter/m/6f9a4e/32.png) [@Moorleiche](https://forum.shopware.com/u/Moorleiche)\
**Post date:** [22. April 2020 um 17:30 UTC](https://forum.shopware.com/t/vue-js-produkt-onetomany-assoziation-mit-customentity/66441/1 "2020-04-22T17:30:19Z")

</div>

Hey, ist es rein technisch gesehen möglich die Seite `Produkt bearbeiten` mit einer Assoziation zu versehen und in einer `sw-entity-multi-select`&nbsp;anzuzeigen und editieren?

Muss ich die Assoziation via Subscriber einbauen oder geht es auch im Vue.js Component?

---

<div class="post-metadata">

**Author:** ![ShapeAndShift](https://avatars.discourse-cdn.com/v4/letter/s/5f8ce5/32.png) [@ShapeAndShift](https://forum.shopware.com/u/ShapeAndShift)\
**Post date:** [22. April 2020 um 17:34 UTC](https://forum.shopware.com/t/vue-js-produkt-onetomany-assoziation-mit-customentity/66441/2 "2020-04-22T17:34:39Z")

</div>

Was genau soll das multi-select anzeigen? Ich verstehe noch nicht so recht&nbsp;

Welche&nbsp;Assoziation / wo kommt die her? Was willste denn genau machen.

Prinzipiell erweiterst du vorhandene entities über eine entity extension.

---

<div class="post-metadata">

**Author:** ![Moorleiche](https://avatars.discourse-cdn.com/v4/letter/m/6f9a4e/32.png) [@Moorleiche](https://forum.shopware.com/u/Moorleiche)\
**Post date:** [22. April 2020 um 23:10 UTC](https://forum.shopware.com/t/vue-js-produkt-onetomany-assoziation-mit-customentity/66441/3 "2020-04-22T23:10:28Z")

</div>

Also ich habe die Entity Extension:

```
class MyEntityProductExtension extends EntityExtension
{
    public function getDefinitionClass(): string
    {
        return ProductDefinition::class;
    }

    public function extendFields(FieldCollection $collection): void
    {
        $collection->add(
            new ManyToManyAssociationField('my_entities', MyEntityProductDefinition::class, ProductDefinition::class, 'product_id', 'my_entity_id')
        );
    }
}

```

Ich habe auch schon die Möglichkeit pro Entity alle assoziierten Produkte zu sammeln =\> Dazu muss ich aber in vue.js criteria.addAssociation(‚products‘) nutzen. Jetzt weiß ich nur nicht ob

1. Die Entity Extension so Korrekt ist

2. Wie ich für den Bereich `Produkt bearbeiten` die Assoziation zu meiner Custom Entity herstellen kann =\>&nbsp;criteria.addAssociation(‚my\_entities‘) !?

3. Die Ausgabe des sw-entity-multi-selects als twig Block extension ist hier nicht das Problem 🙂

&nbsp;

&nbsp;

---

<div class="post-metadata">

**Author:** ![Moorleiche](https://avatars.discourse-cdn.com/v4/letter/m/6f9a4e/32.png) [@Moorleiche](https://forum.shopware.com/u/Moorleiche)\
**Post date:** [23. April 2020 um 02:20 UTC](https://forum.shopware.com/t/vue-js-produkt-onetomany-assoziation-mit-customentity/66441/4 "2020-04-23T02:20:30Z")

</div>

Aiaiai, ich hätte mal einfach einen Blick in das Bundle Example werfen sollen 😉

```
const { Component } = Shopware;

Component.override('sw-product-detail', {
    computed: {
        productCriteria() {
            const criteria = this.$super('productCriteria');
            criteria.addAssociation('bundles');

            return criteria;
        },
    }

});

```

&nbsp;
