Stack Exchange Network

Stack Exchange network consists of 174 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.

Visit Stack Exchange

Questions tagged [di]

Denotes questions related to Dependency Injection in Magento 2.

0
votes
2answers
22 views

Magento 2 describe attrubute property used in Plugin method

I am trying to create a simple module and I can't find the propose of the attribute name and type inside the tag type and plugin in di.xml. can anyone describe attribute name used in plugin? <?...
0
votes
0answers
20 views

Magento 2 getting interface implementation from admin config

I have an interface which gives me the country in which the customer is located. interface CustomerLocatorInterface { public function getLocalCountryCode(); } And I have two possible ...
0
votes
1answer
17 views

What is the Use of Type and Virtual Types(di.xml) in Magento2?

I want to know clear about Type and Virtual Types in di.xml with examples. When we can use it. Please share simple example to understand concept. Note please go through the practical examples.
0
votes
0answers
29 views

M2: Should I make a generic “My Company” module?

My question is a process question. I want to use Magento 2 best practices and I haven't seen any guidance in this regard. A lot of what I read is "how" to do something and not whether it's a good idea....
0
votes
1answer
32 views

Best practice to extend an object

What's the best practice and recommended way to extend an object like \Magento\Store\Model\Store with a new object property. I want to do something like this: $storeManager; //StoreManagerInterface ...
1
vote
3answers
66 views

Confused about using proxies

I kind of understand how the logic and the benefit of proxies in Magento 2 di. But can anybody tell me, how to use it?! Alan Storm use the generated proxy class, for example, I would call \...
5
votes
1answer
89 views

The purpose of the http verbs interfaces

In Magento 2.3 there are some interfaces for all the http verbs Magento\Framework\App\Action\HttpPostActionInterface Magento\Framework\App\Action\HttpGetActionInterface, ... All of them are empty ...
0
votes
1answer
32 views

Magento 2 Overwrites Topmenu.php In Module But Menu Nav Disappears

My di.xml <?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd"> <...
7
votes
3answers
94 views

What is the use of “mapping” node in di.xml in Magento 2?

I am using Magento 2.2.5 have a look on file vendor\magento\module-sales\etc\di.xml <type name="Magento\Payment\Model\Checks\SpecificationFactory"> <arguments> <...
1
vote
1answer
61 views

How can i filter in sales order grid magento 2?

While i am using same code for filter it's working but i have break other grid like customer,invoice,cms page and get error "Not registered handle cms_page_listing_data_source" While i have moved di....
1
vote
0answers
25 views

Exception after bin/magento setup:di:compile and adding virtualType

I was adding this: <virtualType name="Test\Faq\Model\ResourceModel\VisitStat\Collection" type="Magento\Framework\View\Element\UiComponent\DataProvider\SearchResult"> <arguments> ...
0
votes
0answers
41 views

Magento2: What is Dependency Injection(Di) and Object Management (Object Manager)?

Both are most important topics for learning Magento2. I want to discuss what learn from google, pdf,notes,magento documentation etc. Overview: Magento 2 provides a new approach to working with ...
0
votes
2answers
35 views

setup:di:compile ignores third party type definition (Monolog)

I have a DI configuration for a custom exception handler: <type name="My\Logger\Handler\ExceptionHandler"> <arguments> <argument name="formatter" xsi:type="object">My\...
0
votes
1answer
27 views

Undo preference from third party module

I have to deal with a third party module that enthusiastically uses preferences for everything and breaks stuff with it. For example: <preference for="Magento\Sales\Model\Order" type="Censored\...
1
vote
1answer
73 views

Injecting object through virtual type not working

I am using this config in di.xml <virtualType name="ourFirstVirtualType" type="Test\Testmod\Model\Newmodelclass"> <arguments> <argument name="test_object" xsi:type=...
1
vote
2answers
78 views

Complex message not working

I've followed this tutorial: https://store.fooman.co.nz/blog/displaying-complex-error-messages-in-magento-2.html This is my di.xml <?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/...
5
votes
1answer
69 views

Plugin for aroundSavePaymentInformationAndPlaceOrder Throwing Error

I have a plugin that i want to intercept aroundSavePaymentInformationAndPlaceOrder, but it is giving me an error. Here is how it is set up: Vendor/Module/etc/di.xml <?xml version="1.0" ...
0
votes
0answers
34 views

magento 2 - Overriding Abstract class in model is not working in custom module

I am trying to override the fontsize value for pdfslip file in my module. The pdfslip files can be found in admin under sales->invoices->actions. The function that I am interested in is ...
3
votes
2answers
107 views

Magento 2: Dependency Injection: Optional class as parameter

We are developing a Magento 2 extension and we need to inject a class from a third party extension that the user may or may not have installed. We thought about injecting the class via the di.xml ...
0
votes
0answers
10 views

Magento 2. Make dependency injection work on storview level?

I have a custom module, and in di.xml file, I have the following code, <type name="Magento\CatalogSearch\Model\Search\IndexBuilder"> <plugin name="change_list_filter_table" ...
2
votes
1answer
420 views

Cannot get customer session in Controller

I am just trying to get the customer session in my custom controller class and it always returns NULL. What is wrong with Magento? It doesn't work as expected, I am spending days not minutes for a ...
0
votes
0answers
28 views

Magento 2.1.8 - Custom Column Module in Admin Disables Buttons

Initial Goal: Add a new custom column to display additional existing product data per variation/simple in the Current Variations grid in the Configurable view. Initial View: After some searching, ...
0
votes
0answers
265 views

Magento 2 block page Not registered handle

I have created a module, from that the super admin can assigns an order to the sub-admin, the sub-admin can only view that assigned orders. for that in sales_order_grid table, I have added two ...
0
votes
2answers
48 views

Activating custom grid in magento2 causes other grid to throws error

I have created a custom grid with following di.xml di.xml <preference for="\Magento\Customer\Controller\Adminhtml\Index\InlineEdit" type="Namespace\Modulename\Controller\Adminhtml\Index\...
3
votes
3answers
374 views

Overriding constructors for dependency injection

So, the new dependency injection approach requires me to inject everything I need into the contructor of an object. I get that. But how is this more flexible? For instance... I have my own Topmenu ...
3
votes
2answers
994 views

Magento 2: How to Add a viewModel to a core block?

I am trying to overwrite a core template and add my custom logic using a viewModel as follow: <?xml version="1.0"?> <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:...
1
vote
1answer
133 views

Magento 2: Plugin not working on \Magento\Swatches\Block\LayeredNavigation\RenderLayered

I'm trying to create a plugin for \Magento\Swatches\Block\LayeredNavigation\RenderLayered in order to modify the return of getOptionViewData() It's not working. My di.xml looks like that: ... <...
0
votes
1answer
27 views

Multiple datasource define in di.xml magento2

<?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd"> <type name="...
0
votes
0answers
34 views

How to rewrite a Magento 2 Command

I am looking for a way to rewrite (replace) the following class: Magento\Setup\Console\Command\ModuleEnableCommand But cannot find any way to do it. These commands are loaded using the Zend Service ...
0
votes
1answer
27 views

Magento2: How to use different implementations of an interface

I am creating supplier imports. In order to do this, I created a base module "ProductImportBase" and two supplier specific modules "ProductImportA" and "ProductImportB". The base module contains stuff ...
0
votes
0answers
23 views

Why is Magento 2 using the Zend Service Locator instead of the ObjectManager in Magento\Setup\Model\InstallerFactory

In the class Magento\Setup\Model\InstallerFactory there is a create method that returns a new installer. This class is used for example when running bin/magento setup:upgrade The method looks like ...
3
votes
0answers
970 views

Fatal error: Uncaught Error: Cannot instantiate interface Magento\Framework\Serialize\SerializerInterface

When I try to update magento 2.1.9 to 2.2.0 I am getting this error Fatal error: Uncaught Error: Cannot instantiate interface Magento\Framework\Serialize\SerializerInterface in vendor/magento/...
-1
votes
4answers
58 views

Magento2 Controller Not overriding [closed]

I add the controller in my local but it not working. di.xml <?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../....
1
vote
1answer
112 views

In Magento 2 use the after plugin in place order function, in the plugin i can't get the order id?

in Magento 2 i extend the magento place order function \Magento\Sales\Model\Order but i did give the order id public function afterPlace(\Magento\Sales\Model\Order $subject, $result){ $this-&...
0
votes
0answers
46 views

Category Name Alteration

I have created a module to replace the category name on the front-end with the name entered in my custom attribute, I tested it in Magento 2.2.2 & it worked perfect there but now when I am ...
1
vote
2answers
995 views

Magento2 around method in plugin to save extra field data of customer

I would like to add extra information to the customer. I have added field in admin side form of customer. I have to save that data. How to add plugin around method during save customer.
0
votes
0answers
164 views

Order collection in plugin not working

I'm trying following code to get the specific order from quote_id in magento2.1.5 and it is working properly. <?php namespace Package\Module\Controller\Index; class Index extends \Magento\...
2
votes
3answers
92 views

Magento 2 DI compilation issue

I've the run the before running setup:di:compile home page and other is working fine.After running the setup:di:compile expect home page other pages working fine. if i'm removing the di/global.ser ...
0
votes
0answers
21 views

how to get product repository in di class file

Right now i am customizing the order edit page. For the purpose, i have overridden name.phtml and classes associated to it to my module. I have also used DI to override \Magento\Sales\Block\...
0
votes
2answers
68 views

Contoller in magento2?

How to override Magento\Sales\Controller\Adminhtml\Order\AddressSave contoller? di.xml <preference for="Magento\Sales\Controller\Adminhtml\Order\AddressSave" type="Xxx\Order\Controller\Adminhtml\...
3
votes
1answer
71 views

Magento 2 - Empty arguments in adapter __construct()

I am creating an adapter for a third party module by following the Magento_Braintree structure. In the Braintree module, they have a factory BraintreeAdapterFactory that creates an adapter ...
1
vote
0answers
36 views

Disable di:compile PHP Comments check in Magento 2.2.2

I Upgraded to Magento 2.2.2 and now di:compile checks if @params comments for constructors are correct. I have many modules where the comments are incorrect but the params are correct, so I want to ...
4
votes
2answers
2k views

Magento 2: How can I use ifconfig or something similar to layout component

I created a boolean option (Yes / No) in Store -> Configuration, with which I can display or not the checkout sidebar. The configuration path is: vendorname_sidebar/display/enabled. Below is a part ...
0
votes
0answers
305 views

“Cannot instantiate interface” but preference tag exists in di.xml

I'm getting this error when trying to load a page: Fatal error: Uncaught Error: Cannot instantiate interface Codazon\ThemeOptions\Framework\App\Config\Scope\ReaderPoolInterface in /magento2/vendor/...
1
vote
1answer
76 views

unit test with phpunit

I create simple unit test with object manager with class name $objectManager = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this) and object Name ModuleList like $...
2
votes
2answers
2k views

Magento 2 custom logger 'Missing required argument $name'

I'm trying to create a custom logger, so I can log to a custom log file. I've looked at and followed multiple tutorials that all say the same, however I keep getting the same error. Tutorials that I ...
0
votes
1answer
31 views

Magento2 di in ResourceCollection

I have the fallowing collection and I want to pass the ProductFactory so it can be accessible in my collection. class Collection extends AbstractCollection { public $productFactory; ...
1
vote
0answers
57 views

Magento 2 Resource Model not working [closed]

Di.xml <?xml version="1.0"?> <!-- /** * Mageplaza_HelloWorld extension * NOTICE OF LICENSE * * This source file is subject to the Mageplaza ...
0
votes
2answers
142 views

DI not working in Controller

I have a Controller that contains the following: ... use Magento\Backend\App\Action; use Magento\TestFramework\ErrorLog\Logger; use Magento\MediaStorage\Model\File\UploaderFactory; use MyNamespace\...
2
votes
1answer
344 views

What should we use instead of the Magento\Checkout\Model\Cart model?

The Magento\Checkout\Model\Cart class was marked as deprecated a long time ago (since 2.1 ver.). What should I use instead of it to work with a customers cart? I know that I can work directly with a ...