Magento的无法申请目录规则

问题描述:

迁移从Magento专业到Magento的社区后,我试图运行促销>>目录价格规则内的“应用规则”功能时所遇到的问题。Magento的无法申请目录规则

我收到确切的消息如下:

“无法应用的规则要求无效的网站代码:阵”

有没有人见过这个?我似乎无法找到有关错误的任何/信息。

感谢您的帮助!

+0

从目录价格规则粘贴屏幕快照? – Meabed 2013-05-09 05:10:36

+0

当然:http://i.imgur.com/QbsWGQn.png – 2013-05-09 05:15:07

+0

我还注意到,只有当我将规则设置为“活动”时才会出现此错误。如果所有规则都处于非活动状态,并且我点击应用,则收到的唯一消息是“无法应用规则”。 – 2013-05-09 05:35:57

在型号App.php

应用程序/代码/核心/法师/核心/型号/ App.php

public function getWebsite($id=null) 
{ 
    if (is_null($id)) { 
     $id = $this->getStore()->getWebsiteId(); 
    } elseif ($id instanceof Mage_Core_Model_Website) { 
     return $id; 
    } elseif ($id === true) { 
     return $this->_website; 
    } 

    if (empty($this->_websites[$id])) { 
     $website = Mage::getModel('core/website'); 
     if (is_numeric($id)) { 
      $website->load($id); 
      if (!$website->hasWebsiteId()) { 
       throw Mage::exception('Mage_Core', 'Invalid website id requested.'); 
      } 
     } elseif (is_string($id)) { 
      $websiteConfig = $this->_config->getNode('websites/'.$id); 
      if (!$websiteConfig) { 
       throw Mage::exception('Mage_Core', 'Invalid website code requested: '.$id); 
      } 
      $website->loadConfig($id); 
     } 
     $this->_websites[$website->getWebsiteId()] = $website; 
     $this->_websites[$website->getCode()] = $website; 
    } 
    return $this->_websites[$id]; 
} 

,如果你看到抛出异常无效的网站代码行要求:$ ID

这是例外发生在你的情况和它的,因为分配给网站的价格规则不存在或错误的ID或者一些与此有关。

尝试删除该规则,然后重新添加。

+0

谢谢你的回复。我删除了所有规则,并添加了测试规则,并享有0%的折扣。但是,当我尝试应用它时收到相同的错误。 – 2013-05-09 05:54:42

+0

您的所有网站的ID,并从该表中获取规则的网站ID在数据库catalogrule_group_website,并从该表catalogrule_website(它们粘贴在这里,所以我们可以匹配,如果指定的商店ID是正确的或没有?) – Meabed 2013-05-09 06:11:39

+0

好了,所以我比较了表。在catalogrule_group_website中,我们有:'rule_id','customer_group_id','website_id'。在catalogrule_website中,我们有'rule_id'和'website_id'。我试图添加'customer_group_id'来查看是否可以修复它,但它不起作用。 – 2013-05-09 19:54:43

可否请你检查你迁移到Magento的社区补丁。我希望有些错过编码。在执行代码期间打印某种数组。

http://chat.*.com/transcript/message/9332922#9332922

感谢。

来回1.5.1.0迁移到1.7.0.2 Magento的CE时,我有同样的问题。问题在于catalogrule表的列“website_ids”和“customer_group_ids”。这些列在1.7.0.2数据库中不存在,但如果您尝试从已迁移的Magento商店中删除它们,您将无法保存任何规则。我找到的解决方案是,我直接在数据库中为这两列分配NULL值,之后应用规则按钮起作用。但是,如果您再次保存规则,则需要重复该作业。