doubianxian6557 2014-11-11 12:10
浏览 12
已采纳

Magento添加自定义错误消息

I want to add custom error message when specific it satisfies specific condition. Below is the code I wrote on controller. The error message is getting displayed when i navigate to some other page,however this is not showing error message in same page.

Ideally it should show error message on the same page and don't want to show error anywhere else.

public function testAction(){

      $this->loadLayout()->_initLayoutMessages('customer/session'); 

      if(!isset($_FILES['docname']['name']) && $_FILES['docname']['name'] == ''){
        Mage::getSingleton('customer/session')->addError('Custom error message');
      }

      $this->renderLayout();
}
  • 写回答

1条回答 默认 最新

  • doutang3760 2014-11-12 01:32
    关注

    If you force the page to reload, the error message will be displayed on same page:

    if (!isset($_FILES['docname']['name']) && $_FILES['docname']['name'] == '') {
        $this->_getSession()->addError('Custom error message');
        $this->_redirect('*/*/');
        return;
    }
    

    Another way to display an error message on the same page is by overwriting the _prepareLayout() function in your block:

    protected function _prepareLayout() {
        // IF statement
            $this->getMessagesBlock()->addError('Custom error message');
        // End of IF
        return parent::_prepareLayout();
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
  • ¥15 路易威登官网 里边的参数逆向
  • ¥15 Arduino无法同时连接多个hx711模块,如何解决?
  • ¥50 需求一个up主付费课程
  • ¥20 模型在y分布之外的数据上预测能力不好如何解决
  • ¥15 processing提取音乐节奏
  • ¥15 gg加速器加速游戏时,提示不是x86架构
  • ¥15 python按要求编写程序
  • ¥15 Python输入字符串转化为列表排序具体见图,严格按照输入