Estoy tratando de crear un módulo en magento2, ahora me quedé atrapado creando una página de cuadrícula en el lado del administrador, avíseme si alguien ya lo hizo
Puede encontrar un módulo CRUD de muestra (que también incluye una cuadrícula) aquí . No estoy seguro de si funciona en la última versión, pero debería poder extraer el código que necesita desde allí.
Marius
Respuestas:
6
Primero necesitas crear una página para la cuadrícula. Ver ejemplo de nueva página de magento2
Luego agregue el componente ui en el diseño para esta vista de página / adminhtml / layout / samplegrid_index_index.xml
: - entonces lo que estará en grid xml y el controlador en url no puedo encontrar, así que, ¿podrían ayudarme proporcionando el código correcto?
Pradeep Kumar
¿Cómo unir tabla y obtener datos por clave de referencia en di.xml
xanka
Este formato sample_grid_entity_listing.xml ya no es válido (a partir de 2.0.0). Hubo varios cambios de formato entre los lanzamientos de RC y el final. Pude hacerlo funcionar basándome en Sales/view/adminhtml/ui_component/sales_order_grid.xml.
Finalmente, la cuadrícula se realiza con el componente Ui. A continuación se detallan los pasos y archivos necesarios para la cuadrícula con la opción de filtro.
Primero tenemos que crear un diseño de acción de índice xml que sea:
si tiene la opción de eliminación masiva, entonces necesita crear un archivo de acción de eliminación masiva en el controlador que sea app \ code \ Sugarcode \ Test \ Controller \ Adminhtml \ Lists \ MassDelete.php
Hasta aquí puede filtrar, ordenar la opción y se realiza una acción masiva y funciona bien, pero la búsqueda de texto completo no funciona si eso está arreglado, la cuadrícula completa está lista, ¿alguien puede ayudarme a solucionar ese problema?
¿Ha habido algún cambio documentado de 2.0 a 2.2.3 de Magento en algo de esto? ¿O un recurso actualizado o todavía se aplica todo esto?
Anthony Cicchelli
1
para crear una nueva página de cuadrícula, siga los pasos a continuación en mi ex, tomé mi módulo personalizado llamado prueba y también los recursos también se llaman prueba
ahora cree 2 nuevas acciones, una es para la vista predeterminada que es la acción del índice y la segunda es para después de serach, necesitamos una acción de cuadrícula
Bloque \ Adminhtml \ Listas \ Grid.php necesita mencionar el administrador de objetos para la colección que es \Sugarcode\Test\Model\TestFactory $testFactory,
impotente para reemplazar solo datos de cuadrícula después de la búsqueda
a diferencia de magento1.x en magetno2, necesitamos mencionar la ruta de la plantilla en el archivo de bloque de contenedor y debe crear un archivo en la carpeta de la plantilla que esté
ver \ adminhtml \ templates \ lists \ lists.phtml y un mínimo de un código de línea de
<?php echo $block->getGridHtml()?>
eso es borrar caché y puedes ver la página de cuadrícula
Esto funciona por ahora, pero pronto no lo hará. El sistema de cuadrícula se está moviendo a los "ui_components" gradualmente. Eche un vistazo a cómo funciona la cuadrícula de pedidos para ver cómo funciona.
Marius
@Marius ¿Cuál es la principal diferencia entre ui_components y la creación de cuadrícula simple?
Bhupendra Jadeja
El componente de interfaz de usuario es solo un archivo xml. Entonces, la configuración declarativa. Las rejillas clásicas requieren código. También el componente tge ui tiene algunas características más como salvar el estado
Marius
Esta solución funcionó para mí. Como @Marius dice que este enfoque se eliminará pronto y será reemplazado por "ui_components". Pero no hay un tutorial oficial para Grid usando "ui_components" y que brinde detalles completos sobre tablas de unión y personalización.
Suman-PHP4U
-2
Para crear Magento2 Admin Grid Siga las instrucciones del blog siguiente:
Respuestas:
Primero necesitas crear una página para la cuadrícula. Ver ejemplo de nueva página de magento2
Luego agregue el componente ui en el diseño para esta vista de página / adminhtml / layout / samplegrid_index_index.xml
y definición para la vista del componente ui / adminhtml / ui_component / sample_grid_entity_listing.xml
y definir proveedor de recogida en di
Más detalles sobre los componentes de la IU en la documentación oficial
fuente
Sales/view/adminhtml/ui_component/sales_order_grid.xml
.Finalmente, la cuadrícula se realiza con el componente Ui. A continuación se detallan los pasos y archivos necesarios para la cuadrícula con la opción de filtro.
Primero tenemos que crear un diseño de acción de índice xml que sea:
Sugarcode \ Test \ view \ adminhtml \ layout \ test_lists_index.xml
El segundo archivo es el componente ui xml, es decir, si usamos este xml no es necesario Grid.php, todo se configura desde este xml solamente
code \ Sugarcode \ Test \ view \ adminhtml \ ui_component \ test_lists_listing.xml
necesitamos mencionar algunas etiquetas para el proveedor de datos en di.xml
Para lograr filtros, necesitamos DataProvider, que estará dentro de Model // DataProvider.php, que se menciona en test_lists_listing.xml, que es
app \ code \ Magento \ Cms \ Model \ Block \ DataProvider.php
si tiene la opción de eliminación masiva, entonces necesita crear un archivo de acción de eliminación masiva en el controlador que sea app \ code \ Sugarcode \ Test \ Controller \ Adminhtml \ Lists \ MassDelete.php
Hasta aquí puede filtrar, ordenar la opción y se realiza una acción masiva y funciona bien, pero la búsqueda de texto completo no funciona si eso está arreglado, la cuadrícula completa está lista, ¿alguien puede ayudarme a solucionar ese problema?
fuente
para crear una nueva página de cuadrícula, siga los pasos a continuación en mi ex, tomé mi módulo personalizado llamado prueba y también los recursos también se llaman prueba
etc / adminhtml / menu.xml
etc / adminhtml / acl.xml
asegúrese de que para el administrador haya enrutadores que sean etc / adminhtml / routes.xml
ahora cree 2 nuevas acciones, una es para la vista predeterminada que es la acción del índice y la segunda es para después de serach, necesitamos una acción de cuadrícula
Controller / Adminhtml / Lists / Index.php
Controller / Adminhtml / Lists / Grid.php
pasemos a bloquear como en magento1.x en magneto2 también necesitamos contenedor y Grid.php
Bloque \ Adminhtml \ Lists.php
Bloque \ Adminhtml \ Listas \ Grid.php necesita mencionar el administrador de objetos para la colección que es
\Sugarcode\Test\Model\TestFactory $testFactory
,los pasos finales son los archivos es ver el diseño xml, aquí también tenemos que diseñar el índice y la cuadrícula
view \ adminhtml \ layout \ test_lists_index.xml
view \ adminhtml \ layout \ test_lists_grid.xml
en diseño de cuadrícula xml
impotente para reemplazar solo datos de cuadrícula después de la búsqueda
a diferencia de magento1.x en magetno2, necesitamos mencionar la ruta de la plantilla en el archivo de bloque de contenedor y debe crear un archivo en la carpeta de la plantilla que esté
ver \ adminhtml \ templates \ lists \ lists.phtml y un mínimo de un código de línea de
eso es borrar caché y puedes ver la página de cuadrícula
fuente
Para crear Magento2 Admin Grid Siga las instrucciones del blog siguiente:
https://www.aurigait.com/blog/magento-2-admin-grid/
fuente