Eu tenho uma tabela personalizada no meu banco de dados Magento2 e não pode encontrar um simples trabalho exemplo de como se conectar, recuperar e exibir os dados de campo em uma página Magento2.
Este funciona principalmente, mas está incompleto porque para na busca do campo, mas não mostra como realmente exibir o campo na página da Web: http://webkul.com/blog/magento2-write-custom-mysql-query-without -using-model /
Alguém pode fornecer um exemplo completo?
Respostas:
Você mencionou um tutorial que explica a operação CRUD sem modelo, mas não é uma boa prática usar o gerenciador de objetos.
deixe-me explicar a operação bruta com o modelo, é muito simples. Este é um conceito muito importante no Magento.
Por exemplo, vamos considerar a estrutura da tabela abaixo
Para operação CRUD, você precisa criar três coisas
1. Modelo
No Modelo, você precisa inicializar o modelo de recursos
app/code/<vendor>/<module>/Model/Example.php
2. Modelo de Recursos
No modelo de recursos, você precisa inicializar o nome da tabela e a chave primária.
app/code/<vendor>/<module>/Model/ResourceModel/Example.php
3. Coleta
Na coleção, você precisa definir o Modelo e o Modelo de Recursos.
app/code/<vendor>/<module>/Model/ResourceModel/Example/Collection.php
É isso, agora você pode buscar o valor da tabela em qualquer bloco usando a injeção de dependência.
Por exemplo: obter e definir dados no bloco
Por favor, note que passamos
<module>\<vendor>\Model\ExampleFactory
no construtor, mas nenhum arquivo será encontrado nesse localNo Magento 2, cada modelo CRUD possui uma classe de fábrica correspondente. Todos os nomes de classe de fábrica são o nome da classe de modelo anexada com a palavra "Fábrica". Desde que nossa classe de modelo é nomeada,
<module>/<vendor>/Model/Example
isso significa que nossa classe de fábrica é nomeada<module>/<vendor>/Model/ExampleFactory
Depois disso, você pode chamar esse método de bloco no seu arquivo de modelo
fonte