Hallo allerseits,
ich habe folgende Situation: in einem selbst entwickelten Plugin gibt es das Model MyModel mit einer Hersteller-Referenz
Doctrine Model
/**
* @var
* @ORM\Column(name="supplierId", type="integer", nullable=true)
*/
protected $supplierId = null;
/**
* @var
* @ORM\ManyToOne(targetEntity="Shopware\Models\Article\Supplier")
* @ORM\JoinColumn(name="supplierId", referencedColumnName="id")
*/
protected $supplier;
Extjs Model
Ext.define('Shopware.apps.MyPlugin.model.MyModel', {
extend: 'Shopware.data.Model',
// code
fields: [
// other attributes
{ name : 'supplierId', type: 'int', useNull: true },
],
associations: [{
relation: 'ManyToOne',
field: 'supplierId',
type: 'hasMany',
model: 'Shopware.apps.Base.model.Supplier',
name: 'getSupplier',
associationKey: 'supplier'
}],
});
und entsprechend ist das Feld supplierId im View hinterlegt
supplierId: {
fieldLabel: "Hersteller",
}
Das Ergebnis ist ein funktionierendes Dropdown im Backend, worin ich suchen kann. Die IDs der ausgewählten Hersteller werden gespeichert und es ist auch möglich das Feld initial leer zu lassen. Was allerdings nicht geht, ist das Feld wieder zu leeren. Wird das Feld geleert und gepspeichert, wird es automatisch mit dem vorher ausgewählten Hersteller gefüllt.
Frage: Wie kann eine “leere Option” hinzugefügt werden, die den Wert auf Null setzt.
Versucht habe ich schon vieles, leider hat nicht wirklich was davon funktioniert. Sicherlich gibt es dafür eine simple Lösung…
Grüße
Nikk