Ich versuche, ein Modul in magento2 zu erstellen. Jetzt habe ich die Erstellung einer Rasterseite auf der Administrationsseite eingestellt. Lassen Sie mich wissen, ob dies bereits geschehen ist
Sie können eine Probe CRUD Modul finden (die ein Gitter umfasst auch) hier . Sie sind sich nicht sicher, ob es auf der neuesten Version funktioniert, aber Sie sollten in der Lage sein, den benötigten Code von dort zu extrahieren.
Marius
Antworten:
6
Zuerst müssen Sie eine Seite für das Raster erstellen. Siehe magento2 neues Seitenbeispiel
Fügen Sie dann die UI-Komponente im Layout für diese Seitenansicht / adminhtml / layout / samplegrid_index_index.xml hinzu
: - dann, was in Grid XML und Controller in URL sein wird, kann ich nicht finden. Können Sie mir bitte helfen, indem Sie den richtigen Code
angeben
Wie verbinden Sie Tabelle und getdata durch Referenzschlüssel in di.xml
xanka
Dieses Format sample_grid_entity_listing.xml ist nicht mehr gültig (ab 2.0.0). Es gab verschiedene Formatänderungen zwischen den RC-Versionen und dem Finale. Ich konnte es zum Laufen bringen Sales/view/adminhtml/ui_component/sales_order_grid.xml.
Schließlich wird das Raster mit der Ui-Komponente erstellt. Nachfolgend sind die Schritte und Dateien aufgeführt, die für das Raster mit Filteroption erforderlich sind.
Zuerst müssen wir eine XML-Datei für das Indexaktionslayout erstellen.
Die zweite Datei ist die UI-Komponente XML. Wenn wir diese XML verwenden, ist Grid.php nicht erforderlich. Alles wird nur aus dieser XML heraus konfiguriert
Wenn Sie über eine Massenlöschoption verfügen, müssen Sie eine Massendelete-Aktionsdatei im Controller erstellen, die app \ code \ Sugarcode \ Test \ Controller \ Adminhtml \ Lists \ MassDelete.php lautet
Bis hier können Sie filtern, sortieren Option und Massenaktion wird durchgeführt und seine Arbeits fein aber Volltextsuche funktioniert nicht , wenn das volle Gitter befestigt ist , ist bereit , kann jemand mir helfen , dieses Problem zu beheben.
Wurden von Magento dokumentierte Änderungen von 2.0 auf 2.2.3 vorgenommen? Oder eine aktualisierte Ressource oder gilt das alles noch?
Anthony Cicchelli
1
Um eine neue Rasterseite zu erstellen, befolgen Sie bitte die folgenden Schritte in meinem Ex. Ich habe mein benutzerdefiniertes Modul namens Test verwendet und auch Ressourcen werden auch Test genannt
Es ist vielleicht immer noch möglich, aber veraltet.
KAndy
1
Dies funktioniert vorerst, wird es aber bald nicht mehr. Das Rastersystem wechselt schrittweise zu den "ui_components". Sehen Sie sich an, wie das Auftragsraster funktioniert.
Marius
@Marius Was ist der Hauptunterschied zwischen ui_components und der einfachen Rastererstellung?
Bhupendra Jadeja
Die UI-Komponente ist nur eine XML-Datei. Also deklarative Konfiguration. Klassische Gitter erfordern Code. Außerdem hat die UI-Komponente einige weitere Funktionen wie das Speichern des Status
Marius
Diese Lösung hat bei mir funktioniert. Wie @Marius sagt, wird dieser Ansatz bald entfernt und durch "ui_components" ersetzt. Es gibt jedoch kein offizielles Tutorial für Grid mit "ui_components", das vollständige Details zu Verknüpfungstabellen und Anpassungen enthält.
Suman-PHP4U
-2
So erstellen Sie ein Magento2-Admin-Raster Befolgen Sie die Anweisungen im folgenden Blog:
Antworten:
Zuerst müssen Sie eine Seite für das Raster erstellen. Siehe magento2 neues Seitenbeispiel
Fügen Sie dann die UI-Komponente im Layout für diese Seitenansicht / adminhtml / layout / samplegrid_index_index.xml hinzu
und Definition für die UI-Komponentenansicht / adminhtml / ui_component / sample_grid_entity_listing.xml
und definieren Sie den Sammlungsanbieter in di
Weitere Details zu UI-Komponenten finden Sie in der offiziellen Dokumentation
quelle
Sales/view/adminhtml/ui_component/sales_order_grid.xml
.Schließlich wird das Raster mit der Ui-Komponente erstellt. Nachfolgend sind die Schritte und Dateien aufgeführt, die für das Raster mit Filteroption erforderlich sind.
Zuerst müssen wir eine XML-Datei für das Indexaktionslayout erstellen.
Sugarcode \ Test \ view \ adminhtml \ layout \ test_lists_index.xml
Die zweite Datei ist die UI-Komponente XML. Wenn wir diese XML verwenden, ist Grid.php nicht erforderlich. Alles wird nur aus dieser XML heraus konfiguriert
code \ Sugarcode \ Test \ view \ adminhtml \ ui_component \ test_lists_listing.xml
Wir müssen einige Tags für den Datenprovider in di.xml erwähnen
Um Filter zu erhalten, benötigen wir DataProvider, der sich in Model // DataProvider.php befindet, das in test_lists_listing.xml erwähnt wird
app \ code \ Magento \ Cms \ Model \ Block \ DataProvider.php
Wenn Sie über eine Massenlöschoption verfügen, müssen Sie eine Massendelete-Aktionsdatei im Controller erstellen, die app \ code \ Sugarcode \ Test \ Controller \ Adminhtml \ Lists \ MassDelete.php lautet
Bis hier können Sie filtern, sortieren Option und Massenaktion wird durchgeführt und seine Arbeits fein aber Volltextsuche funktioniert nicht , wenn das volle Gitter befestigt ist , ist bereit , kann jemand mir helfen , dieses Problem zu beheben.
quelle
Um eine neue Rasterseite zu erstellen, befolgen Sie bitte die folgenden Schritte in meinem Ex. Ich habe mein benutzerdefiniertes Modul namens Test verwendet und auch Ressourcen werden auch Test genannt
etc / adminhtml / menu.xml
etc / adminhtml / acl.xml
Stellen Sie sicher, dass für den Administrator Router vorhanden sind, die etc / adminhtml / route.xml lauten
Erstellen Sie jetzt zwei neue Aktionen. Eine ist für die Standardansicht, dh die Indexaktion, und die zweite für die Serach-Aktion
Controller / Adminhtml / Lists / Index.php
Controller / Adminhtml / Lists / Grid.php
Lassen Sie uns weitermachen, um wie in magento1.x in magneto2 zu blockieren. Außerdem benötigen wir container und Grid.php
Block \ Adminhtml \ Lists.php
Block \ Adminhtml \ Lists \ Grid.php müssen Sie Objektmanager für die Sammlung erwähnen , das ist
\Sugarcode\Test\Model\TestFactory $testFactory
,letzte schritte sind dateien ist ansicht layout xml, auch hier müssen wir für index und gitter layouten
view \ adminhtml \ layout \ test_lists_index.xml
view \ adminhtml \ layout \ test_lists_grid.xml
im Rasterlayout xml
Es ist nicht möglich, nur Rasterdaten nach der Suche zu ersetzen
Im Gegensatz zu magento1.x in magetno2 müssen wir den Vorlagenpfad in der Containerblockdatei erwähnen und eine Datei im Vorlagenordner erstellen
Zeigen Sie \ adminhtml \ templates \ lists \ lists.phtml und mindestens einen Zeilencode von an
Das ist es, Cache zu löschen und Sie können Rasterseite sehen
quelle
So erstellen Sie ein Magento2-Admin-Raster Befolgen Sie die Anweisungen im folgenden Blog:
https://www.aurigait.com/blog/magento-2-admin-grid/
quelle