Quantcast
Channel: Programmierung - Shopware Community Forum
Viewing all articles
Browse latest Browse all 2871

Detailansicht mit Listing (OneToMany)

$
0
0
Hey Leute,

neues Modul, neues Problem.

Wir haben ein Plugin welches grundsätzlich aus zwei Models besteht.

Model A:
OneToMany B
Model B:
ManyToOne A
ManyToOne Shopware.apps.Base.model.Article

Soweit so gut. Detailansicht von Model A funktioniert. Auch der Tab für die Auflistung der verknüpften Datensätze (Model B) wird richtig erstellt. Die Detailansicht für Model B funktioniert ebenfalls.

Ein paar Dinge machen allerdings Probleme:
  • Die verknüpften Spalten werden nur mit ID angezeigt und nicht mit dem eigtl. gejointen Namen
  • Die Reloadfunktion für das Grid geht nicht. Genauso das anschließende Laden nach dem Abspeichern bzw. Hinzufügen neuer Einträge nicht. Grundsätzlich also das Neuladen des Grids.
Hier der Fehler nach dem Speichern und beim Reload:
Uncaught TypeError: Cannot read property 'indexOf' of undefinedExt.String.urlAppend @ ext-all.js?201510221322:21
Ext.apply.urlAppend @ ext-all.js?201510221322:21
Ext.define.buildUrl @ ext-all.js?201510221322:21
Ext.define.buildRequest @ ext-all.js?201510221322:21
Ext.define.doRequest @ ext-all.js?201510221322:21
Ext.define.read @ ext-all.js?201510221322:21
Ext.define.load @ ext-all.js?201510221322:21b.implement.callParent @ ext-all.js?201510221322:21
Ext.define.load @ ext-all.js?201510221322:21Ext.define.read @ ext-all.js?201510221322:21
Ext.define.loadPage @ ext-all.js?201510221322:21Ext.override.doRefresh @ base?file=bootstrap&loggedIn=1447842245:989
Ext.define.fireHandler @ ext-all.js?201510221322:21Ext.define.onClick @ ext-all.js?201510221322:21(anonymous function) @ VM15143:6g @ ext-all.js?201510221322:21

problem.png

Der Fehler geschiebt im UrlAppend. Deshalb haben wir uns mal angeschaut wo denn versucht wird die Daten für das Listing zu laden. Und siehe da...es fehlen die Proxyeinträge für die API-Calls. Aus diesem Grund kann keine URL zusammengebaut werden und sich keine neuen Daten geladen werden.

Anbei noch unsere Implementierung der Problemstelle:
Model B:
    configure: function () {
        return {
            listing: 'Shopware.apps.AdvancedReseller.view.list.CommissionArticle',
            detail: 'Shopware.apps.AdvancedReseller.view.detail.CommissionArticle',
            controller: 'CommissionArticle'
        };
    }
Nun die Frage: Wie teilt man an dieser Stelle mit welcher Store bzw. welche URL aufgerufen werden soll (=wie der Proxy aussehen soll)?

Gerne stellen wir auch andere Quelltextstellen zur Verfügung. Auf Grund der Postlänge verzichten wir aber erstmal darauf.

Hatte jemand das Problem schon einmal? Muss man auf andere Stellen achten?

Vielen Dank im Voraus

Gruß

Viewing all articles
Browse latest Browse all 2871

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>