यकीन नहीं होता कि यह वही है जो आप ढूंढ रहे हैं, लेकिन मैं इसे एक शॉट दे रहा हूं।
आप इस तरह से संदेश पुनः प्राप्त कर सकते हैं:
$messages = $this->messageManager->getMessages(true);
जहां messageManager
का एक उदाहरण है \Magento\Framework\Message\ManagerInterface
।
कोर में, यह इस तरह से (j) प्रतिक्रिया में त्रुटि संदेशों को वापस करने के लिए अजाक्स कॉल के लिए प्रयोग किया जाता है \Magento\Catalog\Controller\Adminhtml\Category\Move
:
$block = $this->layoutFactory->create()->getMessagesBlock();
...
$block->setMessages($this->messageManager->getMessages(true));
$resultJson = $this->resultJsonFactory->create();
return $resultJson->setData([
'messages' => $block->getGroupedHtml(),
'error' => $error
]);
आउटपुट वाली कार्रवाइयों के लिए आपको कुछ भी नहीं करना चाहिए (मुझे लगता है)। default.xml
से लेआउट फ़ाइल Magento_Theme
मॉड्यूल पहले से ही इस ब्लॉक में शामिल है <block class="Magento\Framework\View\Element\Messages" name="messages" as="messages" template="Magento_Theme::messages.phtml"/>
कि संदेशों को संभाल चाहिए।
[साइड नोट]:
उपयोग न करें$this->_objectManager->get('Magento\Framework\Escaper')->escapeHtml($message)
। अपने निर्माता में इंजेक्ट करें Magento\Framework\Escaper
और इसका उपयोग करें।