嗨,我面临的问题起初似乎很简单,但现在变成了一场真正的噩梦。
我被要求为所有产品添加一个属性(即点)(使用管理面板非常简单地完成)并将其总数作为可以设置规则的购物车属性!?
我非常肯定购物车属性定义在:
class Mage_SalesRule_Model_Rule_Condition_Address extends Mage_Rule_Model_Condition_Abstract
{
public function loadAttributeOptions()
{
$attributes = array(
'base_subtotal' => Mage::helper('salesrule')->__('Subtotal'),
'total_qty' => Mage::helper('salesrule')->__('Total Items Quantity'),
'weight' => Mage::helper('salesrule')->__('Total Weight'),
'payment_method' => Mage::helper('salesrule')->__('Payment Method'),
'shipping_method' => Mage::helper('salesrule')->__('Shipping Method'),
'postcode' => Mage::helper('salesrule')->__('Shipping Postcode'),
'region' => Mage::helper('salesrule')->__('Shipping Region'),
'region_id' => Mage::helper('salesrule')->__('Shipping State/Province'),
'country_id' => Mage::helper('salesrule')->__('Shipping Country'),
);
$this->setAttributeOption($attributes);
return $this;
}
<...>
因此,如果我覆盖此模型并向该数组添加一个项目,我将获得规则定义管理面板中显示的属性。似乎所有这些属性在 sales_flat_quote_address 表中都有一个匹配列,除了 total_qty 和 payment_method!
现在的问题是我应该怎么做才能在规则处理中计算和评估我的新属性?我应该在此表中添加一列并在购物车更改时更新其值吗?
任何有关如何做到这一点的见解都将非常有价值,谢谢。