Plugin mit 2 Backend-Modulen

Ist es möglich das man 2 Backend-Module mit einem Plugin erstellt? Und wenn ja brauch ich dann 2 Subapplokationen, eine jede Modul? Gibt es vlt. eine Doku/ein Beispiel dazu? Ich habe in den DevloperGuides gesucht habe aber nichts gefunden. Ich würde mich freuen wenn mir jemand weiterhelfen könnte. Danke

Was meinst du mit 2 backend Module? 2 Menü Einträge? Oder 2 Einträge in der plugin Liste - was relativ sinnlos wäre - wenn dein plugin so konfigurations lastig ist dann baue dir eine ext Form dazu. Gruß Kai ------------------- Gesendet von meinem Nexus 7 (2013) mit Tapatalk 4 Pro

Beispielhaft aus einem unserer Plugins. Menü: // $picking = $this-\>createMenuItem( array( 'label' =\> "Kommissionierung", 'controller' =\> "AtsdWarehouse", 'class' =\> "sprite-baggage-cart-box-label", 'action' =\> "Picking.Picklist", 'active' =\> 1, 'parent' =\> $this-\>Menu()-\>findOneBy( "label", "Einstellungen" ) )); $this-\>Menu()-\>addItem( $picking ); // $picker = $this-\>createMenuItem( array( 'label' =\> "Mitarbeiter", 'controller' =\> "AtsdWarehouse", 'class' =\> "sprite-users", 'action' =\> "Picking.Picker", 'active' =\> 1, 'parent' =\> $picking )); $this-\>Menu()-\>addItem( $picker ); // $settings = $this-\>createMenuItem( array( 'label' =\> "Plugin Einstellungen", 'controller' =\> "AtsdWarehouse", 'class' =\> "sprite-gear", 'action' =\> "Picking.Settings", 'active' =\> 1, 'parent' =\> $picking )); $this-\>Menu()-\>addItem( $settings ); app.js: // launch the app launch: function() { // get this var me = this; // do we have to load via controller in a new browser window? switch ( me.controller ) { // the warehouse designer case "Warehouse.Warehouse": me.checkLoginStatus(); return me.getController( "warehouse.warehouse.Warehouse" ).getWarehouseWindow(); break; // picking of a single order case "Picking.Picking": me.checkLoginStatus(); return me.getController( "picking.picking.Picking" ).getPickingWindow(); break; } // any action given? switch ( me.action ) { // list of all warehouses case "Warehouse.List": return me.getController( "warehouse.list.List" ).getListWindow(); break; // picking list window with all lists case "Picking.Picklist": return me.getController( "picking.picklist.Picklist" ).getPicklistWindow(); break; // picker case "Picking.Picker": return me.getController( "picking.picker.Picker" ).getPickerWindow(); break; // configuration case "Picking.Settings": return me.getController( "picking.settings.Settings" ).getSettingsWindow(); break; } // nothing to return here return null; }, Viele Grüße

@kotoradeluxe Ich will keine 2 Plugin-Einträge das gilt es ja genau zu verhindern :happy:. Ich habe bereits 2 Menü-Einträge das ist nicht das Problem, ebenfalls werden 2 Datenbank Tabellen erzeugt alles wunderbar das Problem ist das ich nicht weis wie ich die Subapplikation(EXTJS) aufbauen muss damit diese im Backend die List- und Detail-View rendert wenn ich einen Menüpunkt anklicke. @Aquatuning GmbH Danke aber irgendwie geht Ihr ganz anders an die Sache ran als ich. Nach welchem Prinzip/Tutorial geht ihr da vor? Hier meine App.js Ext.define(‘Shopware.apps.SideBanner’, { extend: ‘Enlight.app.SubApplication’, name:‘Shopware.apps.SideBanner’, loadPath: ‘{url action=load}’, bulkLoad: true, controllers: [‘Main’], views: [‘list.Window’, ‘list.Banner’, ‘list.Container’, ‘detail.Banner’, ‘detail.Container’, ‘detail.Window’], models: [‘Banner’, ‘Container’], stores: [‘Banner’, ‘Container’], launch: function() { return this.getController(‘Main’).mainWindow; } });

[quote=“wayne”][…] ebenfalls werden 2 Datenbank Tabellen erzeugt […][/quote] Du meinst 2 Einträge für deine 2 Menüpunkte in der Datenbank?! [quote=“wayne”][…] das Problem ist das ich nicht weis wie ich die Subapplikation(EXTJS) aufbauen muss damit diese im Backend die List- und Detail-View rendert wenn ich einen Menüpunkt anklicke.[/quote] Da kann ich nicht ganz folgen. Was genau hast du?! [quote=“wayne”]Nach welchem Prinzip/Tutorial geht ihr da vor? [/quote] Du gibts deinem Menüpunkt einfach den Parameter “action” mit und greifst darauf in deiner app.js zu. Je nachdem steuert du dann deine Applikation weiter. In meinem Fall erzeugt die “Warehouse.List” action ein anderes Fenster, als “Picking.Picklist”. Viele Grüße

nein ich meine schon das was ich geschrieben habe :slight_smile: es werden 2 neue Tabellen in der Datenbank erstellt. Die sogenannte Subapplikation, ist der EXTJS Teil des Plugins, also alle Dateien die sich im Ordner View befinden. Diese ist für das rendern/darstellen der List- und Detail-View im Backend zuständig. Meine Menüpunkte werden so in der Bootstrap initalisiert: $this->createMenuItem(array( ‘label’ => ‘Sidebanner’, ‘controller’ => ‘SideBanner’, ‘class’ => ‘sprite-application-block’, ‘action’ => ‘Index’, ‘active’ => 1, ‘parent’ => $this->Menu()->findOneBy(‘label’, ‘Marketing’) )); Mein Ziel ist es ein Plugin zu haben das 2 Tabellen erzeugt und 2 Backend Module. Man soll im Backend in dem jeweiligen Modul den Inhalt der entsprechenden Tabelle angezeigt bekommen und bearbeiten können.