Perguntas com a marcação «di»

Denota questões relacionadas à injeção de dependência no Magento 2.

4
Magento 2: Execute `setup: di: compile` ** apenas ** um Módulo Específico?
É possível pré-gerar código para um módulo específico? IE - eu posso gerar todo o código no sistema com php bin/magento setup:di:compile No entanto, isso pode levar muito tempo. Eu gostaria de gerar previamente apenas os arquivos para um módulo específico. php bin/magento setup:di:compile Pulsestorm_Commercebug O problema específico que estou …
33 php  magento2  di 

2
Magento 2: qual é o parâmetro construtor $ data array?
Então eu notei que na maioria dos modelos e blocos, existe esse array $data = []dado como o último parâmetro do construtor . Por exemplo \Magento\Catalog\Block\Product\ListProduct public function __construct( \Magento\Catalog\Block\Product\Context $context, \Magento\Framework\Data\Helper\PostHelper $postDataHelper, \Magento\Catalog\Model\Layer\Resolver $layerResolver, CategoryRepositoryInterface $categoryRepository, \Magento\Framework\Url\Helper\Data $urlHelper, array $data = [] ) { $this->_catalogLayer = $layerResolver->get(); $this->_postDataHelper = …

2
Quais são todos os valores permitidos `xsi: type` nos xml's do Magento2
No Magento 2 (quase) todos os argumentos listados nos arquivos xml têm um atributo xsi:typeque determina como o valor do argumento é iterado. Por exemplo, no di.xmlarquivo do módulo backend, existe o seguinte: <argument name="scopeType" xsi:type="const">Magento\Framework\App\Config\ScopeConfigInterface::SCOPE_TYPE_DEFAULT</argument> isso significa que o valor do argumento scopeTypeé o valor da constanteMagento\Framework\App\Config\ScopeConfigInterface::SCOPE_TYPE_DEFAULT ou este …
20 magento2  xml  di 


2
Magento 2: usar declaração versus caminho direto da classe?
Eu posso estar perdendo um ponto, mas estou me perguntando por que às vezes há uma instrução "use" para uma classe específica e às vezes não. Exemplo app\code\Magento\Email\Model\Template.php:, temos no topo do arquivo: namespace Magento\Email\Model; use Magento\Store\Model\ScopeInterface; use Magento\Store\Model\StoreManagerInterface; Então, no __constructmétodo, temos os seguintes parâmetros: public function __construct( \Magento\Framework\Model\Context …


2
Por que algumas classes definem injeções no construtor e no di.xml?
Não entendo por que, em algumas classes, suas injeções de dependência são declaradas duas vezes - uma vez no di.xmlconstrutor da classe concreta e no. Por exemplo Magento\Backend\Model\Url, em , di.xmltem este conjunto de tipos para DI definido: <type name="Magento\Backend\Model\Url"> <arguments> <argument name="scopeResolver" xsi:type="object"> Magento\Backend\Model\Url\ScopeResolver</argument> <argument name="authSession" xsi:type="object"> Magento\Backend\Model\Auth\Session\Proxy</argument> <argument …

1
Como ativar / desativar dinamicamente <preferência> no di.xml?
Atualmente, tenho o seguinte &lt;preference/&gt;em um dos meus arquivos di.xml: &lt;preference for="Magento\Contact\Controller\Index\Post" type="RadTest\TestModule\Controller\Contact\Post" /&gt; Eu tenho uma opção de configuração para ativar / desativar o meu módulo no painel de administração. Eu só quero &lt;preference&gt;que seja ativado quando minha opção de configuração personalizada estiver definida como habilitada. Como posso ativar …

1
O objetivo das interfaces de verbos http
No Magento 2.3, existem algumas interfaces para todos os verbos http Magento\Framework\App\Action\HttpPostActionInterface Magento\Framework\App\Action\HttpGetActionInterface, ... Todos eles estão vazios e implementam Magento\Framework\App\ActionInterface. Também descobri que todos eles estão mapeados app/etc/di.xmlpara um parâmetro Magento\Framework\App\Request\HttpMethodMape muitos controladores implementam essas interfaces. Mas nem todos os controladores. Foi tudo o que pude encontrar sobre eles. …

2
tipo constante di.xml vs init_parameter
Vejo nos di.xmlarquivos do núcleo que alguns dos argumentos têm o tipo, init_parametermas os valores dos parâmetros são todas constantes. &lt;type name="Magento\Framework\View\Page\Config\Renderer"&gt; &lt;arguments&gt; &lt;argument name="appMode" xsi:type="init_parameter"&gt;Magento\Framework\App\State::PARAM_MODE&lt;/argument&gt; &lt;/arguments&gt; &lt;/type&gt; ou este &lt;type name="Magento\Framework\App\Cache\State"&gt; &lt;arguments&gt; &lt;argument name="banAll" xsi:type="init_parameter"&gt;Magento\Framework\App\Cache\State::PARAM_BAN_CACHE&lt;/argument&gt; &lt;/arguments&gt; &lt;/type&gt; e muitos outros. Mas pelo que vejo no intérprete associado init_parameter, o …
8 magento2  di 

2
Irritado com toneladas de classes para DI em construtores de Magento 2 - existe uma maneira melhor?
No momento, estou incomodado de escrever construtores similares em massa, como os seguintes, em meus módulos. public function __construct( \Magento\Framework\Model\Context $context, \Magento\Framework\Registry $registry, /* ... */ \Foo\Bar\Model\Baz $baz, /* ... */ \Magento\Framework\Model\ResourceModel\AbstractResource $resource = null, \Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null, array $data = [] ) { $this-&gt;registry = $registry; /* ... …

2
Magento 2 não suporta injeção de dependência em características?
As características realmente funcionam com injeção de dependência no Magento? Considere o seguinte código: Classe de Características namespace Frame\Slick\Block; use Frame\Slider\Slick\Block\Data as Helper trait Slick { protected $_slickHelper; public function __construct(Helper $slickHelper) { $this-&gt;_slickHelper = $slickHelper; } } Classe usando a característica namespace Frame\Slick\Block; class Product ListProduct implements BlockInterface { …
8 magento2  php  di 

1
O que existe no di.xml global e o que entra no di.xml específico da área?
Estou criando um módulo Magento 2 que adiciona alguma funcionalidade ao back-end. Ele não toca no frontend. Mas se eu colocar algum tipo virtual no etc/adminhtml/di.xmlarquivo (o arquivo de administração di), eu recebo um erro dizendo que a classe não foi encontrada. Se eu adicionar o mesmo pensamento etc/di.xml(no arquivo …
7 magento2  di 
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.