Hallo, ich schreibe zur Zeit ein Backendplugin und wollte dieses nun um ein Textfeld/TinymceFeld erweitern, allerdings funktioniert das nicht so ganz… Habe mich bereits durch einige Forenbeiträge, Anleitungen und Beispiele gehangelt, aber im Grunde komme ich immer beim gleichen Ergebnis raus: “So wie es da steht klappt es einfach nicht”.
Hier mein bisheriger Code:
Ext.define('Shopware.apps.MeinPluginName.model.MeinModel', {
extend: 'Shopware.data.Model',
configure: function() {
return {
controller: 'MeinPluginController',
detail: 'Shopware.apps.MeinPluginName.view.detail.Container',
model: 'Shopware.apps.MeinPluginName.model.MeinModel'
};
},
fields: [
{ name : 'adress', type: 'string'},
{ name : 'idcode', type: 'string'},
{ name : 'template',type: 'tinymce'},
{ name : 'mailing', type: 'boolean'},
{ name : 'days', type: 'integer'}
]
});
Es wird alles richtig dargestellt, nur wo das tinymce/textfeld erscheinen soll erscheint kein Eingabefeld im Backend…
Habe es auch schon mit text, textfield, blob versucht - das funktionierte auch nicht… In einige Beispielen hatte ich folgendes gefunden:
createRightElements: function() {
var me = this,
elements = me.callParent(arguments);
me.attrField = Ext.create('Ext.form.field.Text', {
xtype: 'textfield',
name: 'template',
labelWidth: 155,
fieldLabel: 'TemplateInhalt'
});
elements.push(me.attrField);
return elements;
}
Habe ich dann in meinen Code übernommen und an Stelle der template-Zeile eingefügt in Form von “$this->createRightElements” aber auch hier nichts…
Leider funktionieren auch die Beispiele in der Anleitung nicht (nach Anpassung natürlich)…
Ext.define('Shopware.apps.SwagProduct.view.list.extensions.Filter', {
extend: 'Shopware.listing.FilterPanel',
alias: 'widget.product-listing-filter-panel',
width: 270,
configure: function() {
return {
controller: 'SwagProduct',
model: 'Shopware.apps.SwagProduct.model.Product',
fields: {
name: {},
taxId: 'Steuersatz',
active: this.createActiveField
}
};
},
Produziert bei mir (nachdem ich meine Felder reinsetze) eine völlig leere Maske ohne jegliche Eingabefelder… Das hält genau so lange an, bis ich den Bereich “fields” wieder hinter das configure setze…
Zur Zeit schaffe ich nur 3 Zustände:
-
Es wird ein leeres Fenster angezeigt
-
Es werden alle Felder außer template angezeigt
-
Der neue Menüpunkt, welcher durch mein Plugin angelegt wurde erzeugt ein endloses “wird geladen” …