Stack Exchange Network

Stack Exchange network consists of 175 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.

1
vote
1answer
37 views

Needed short explanation

I have read many blogs to understand some of the topics in Magento 2 but still not clear about them. They are as follows EAV Dependency Injection Could anyone please explain them shortly? Thanks ...
1
vote
1answer
19 views

Are there any restrictions on classes you can override with preference in di.xml

When overriding a class with a custom one using the di.xml, are there any restrictions on what class you can override? I have tried overriding a class of a third party module, but it does not appear ...
2
votes
1answer
33 views

Preference class doesn't work

I'm trying to replace a class method "wrapResult" from: \Magento\Catalog\Pricing\Render\FinalPriceBox Never enter into this method. Try to stop the execution with die () or with xdebug, enter ...
0
votes
0answers
21 views

Error Class not found before deleting generated folder

I have created a preference to override a class but constantly getting error "Class not found" before deleting "generated" folder content: Error: Fatal error: Uncaught Error: Class 'Vendor\Module\...
0
votes
2answers
23 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
35 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
73 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
35 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
34 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
115 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 \...
7
votes
1answer
140 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
189 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
112 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
173 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
42 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
51 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
43 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
44 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
209 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
137 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
134 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
102 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
148 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
11 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
610 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
36 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
359 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
83 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\...
4
votes
3answers
573 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 ...
5
votes
2answers
2k 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
144 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
46 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
1answer
34 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 ...
3
votes
0answers
1k 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
82 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
269 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-&...
1
vote
2answers
1k 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.
2
votes
3answers
115 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 ...
1
vote
0answers
69 views

Magento 2 class constructor

I have class in my module for Magento 2. His constructor gets 2 parameters class MyClass { private $str1; private $str2; public function __construct(string $str1, string str2) { ...
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
96 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
37 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
351 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
92 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
40 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
63 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
190 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
367 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 ...