【问题标题】:Error when adding SOAP/XML-RPC users and roles添加 SOAP/XML-RPC 用户和角色时出错
【发布时间】:2015-03-03 01:32:51
【问题描述】:

我尝试通过 Magento Connect 工具将 Magento 1.9.0.1 升级到 1.9.1,但它似乎阻止了我为 API 访问添加用户和角色。

这是错误:

方法无效 Mage_Admin_Model_User::validateCurrentPassword(Array

有人遇到过这种情况吗?

【问题讨论】:

    标签: magento magento-1.9 magento-1.9.1


    【解决方案1】:

    这个问题可以解决

    1) 打开文件 app/code/core/Mage/Adminhtml/Controller/Action.php 2) 之后查看第 395 行的函数并将内部代码注释到这里。

    受保护的函数 _validateCurrentPassword($password){

       /*$user = Mage::getSingleton('admin/session')->getUser();
        return $user->validateCurrentPassword($password);*/
    

    }

    【讨论】:

      【解决方案2】:

      我最近在将 Magento 升级到更新版本的 1.9 后遇到了同样的问题。

      需要注意的是千万不要修改核心文件,密码验证也不一定要去掉。

      在我个人的情况下,我将原始函数恢复到核心文件,但是,您可以轻松扩展 Mage_Admin_Model_User 类。

      我使用的函数的版本可以在下面找到。

      /**
       * Validate password against current user password
       * Returns true or array of errors.
       *
       * @return mixed
       */
      public function validateCurrentPassword($password)
      {
          $result = array();
      
          if (!Zend_Validate::is($password, 'NotEmpty')) {
              $result[] = $this->_getHelper('adminhtml')->__('Current password field cannot be empty.');
          } elseif (is_null($this->getId()) || !$this->_getHelper('core')->validateHash($password, $this->getPassword())){
              $result[] = $this->_getHelper('adminhtml')->__('Invalid current password.');
          }
      
          if (empty($result)) {
              $result = true;
          }
          return $result;
      }
      

      【讨论】:

        猜你喜欢
        • 2015-05-18
        • 2014-08-14
        • 2014-11-02
        • 1970-01-01
        • 2010-11-23
        • 2010-09-09
        • 1970-01-01
        • 1970-01-01
        • 2019-05-31
        相关资源
        最近更新 更多