Plugin-Config mit Store über config.xml

hi, ich habe ein Plugin bei dem man in der Konfiguration die Bestell-Stati wählen kann. Dazu habe ich folgendes in meine configxml eingetragen:

 

            orderStates
            Bestell-Stati
            Shopware.apps.Base.store.OrderStatus
            
                true

Das funktioniert soweit sehr gut. Leider werden die Namen der Sati direkt aus der DB geholt und entsprechen nicht den unter Bestellungen. Ist es möglich hier die Namen aus den Textbausteinen zu verwenden? 

 

Gruß

H.

Hallo,

weil man das leider so oft falsch sieht: der Plural von Status lautet Status

Duden | Status

1 „Gefällt mir“

@drakon schrieb:

Hallo,

weil man das leider so oft falsch sieht: der Plural von Status lautet Status

Duden | Status

Tatsächlich. Ist das neu? 

Hallo,

nein, das haben schon die Römer vor 2000 jahren so gesprochen Grin

 

Ich hoffe, es kommen noch zielführende Antworten, nachdem ich den Thread gekapert habe. 

Hallo,

versuch es mal damit:

     orderStates
     Bestell-Stati
     Shopware.apps.Base.store.OrderStatus
     
          true
          id
          description   

Beste Grüße

Sebastian

2 „Gefällt mir“

Ich häng mich mal hier an das Thema dran. In einem Plugin hab ich genau den gleichen Extjs Store (OrderStatus) und noch zusätzlich den Bezahl-Status (PaymentStatus) als Combobox mit Mehrfachauswahl konfiguriert. Bisher hat das auch wunderbar funktioniert. Bis heute.

Ich hab Shopware lokal auf einer anderen Arbeitsumgebung neu eingerichtet und in einer frischen und vollständigen SW 5.3 Installation (via Git mit dem Stand von heute) funktioniert das nicht mehr. Das Dropdown in der Plugin Konfiguration ist leer. Wenn ich in die Chrome DevTools gucke sehe ich allerdings auch keinen XHR-Request, der die Daten vom Backend holt. Die beiden Methoden getOrderStatusAction und getPaymentAction im _Controllers/Backend/Base.php-_Controller werden auch gar nicht ausgeführt.

Den Cache habe ich schon komplett geleert und SW steht auf Development Mode. Der HTTP-Cache ist in der config.php auch deaktiviert.

Jemand eine Idee, woran das liegen könnte?

Update:
Das Verhalten tritt nur in Version 5.3 auf. Ich habe das gerade nochmal mit der aktuellen Version vom 5.2 Branch ausprobiert, und da klappt das problemlos.

@yulquen schrieb:

Ich häng mich mal hier an das Thema dran. In einem Plugin hab ich genau den gleichen Extjs Store (OrderStatus) und noch zusätzlich den Bezahl-Status (PaymentStatus) als Combobox mit Mehrfachauswahl konfiguriert. Bisher hat das auch wunderbar funktioniert. Bis heute.

Ich hab Shopware lokal auf einer anderen Arbeitsumgebung neu eingerichtet und in einer frischen und vollständigen SW 5.3 Installation (via Git mit dem Stand von heute) funktioniert das nicht mehr. Das Dropdown in der Plugin Konfiguration ist leer. Wenn ich in die Chrome DevTools gucke sehe ich allerdings auch keinen XHR-Request, der die Daten vom Backend holt. Die beiden Methoden getOrderStatusAction und getPaymentAction im _Controllers/Backend/Base.php-_Controller werden auch gar nicht ausgeführt.

Den Cache habe ich schon komplett geleert und SW steht auf Development Mode. Der HTTP-Cache ist in der config.php auch deaktiviert.

Jemand eine Idee, woran das liegen könnte?

Update:
Das Verhalten tritt nur in Version 5.3 auf. Ich habe das gerade nochmal mit der aktuellen Version vom 5.2 Branch ausprobiert, und da klappt das problemlos.

Can you provide code of your plugin?

@odessite schrieb:

Can you provide code of your plugin?

Sure:

    orderStates
    Bestellstatus
    Order status
    Shopware.apps.Base.store.OrderStatus
    
        true
        id
        description

Der Fehler lag daran, dass in dem XML für das Feld kein Wert für das Feld angegeben ist. In /themes/Backend/ExtJs/backend/base/component/element/select.js wird der Store geladen (Methode setValue:81), wenn ein Wert für das entsprechende Formularfeld in der Plugin Konfiguration angeben wurde.

Das XML muss also wie folgt aufgebaut sein:

    orderStates
    Bestellstatus
    Order status
    2
    Shopware.apps.Base.store.OrderStatus
    
        true
        id
        description

Ich habe allerdings noch nicht rausgefunden, wie ich in der Mehrfachauswahl mehrere Werte angeben kann. Wobei das jetzt auch nicht unbedingt notwendig ist.

1 „Gefällt mir“