Php Magento sales\u order\u create grid-是否可以添加if语句?
我需要sales_order_create网格来显示特价,我通过添加以下内容来实现这一点:Php Magento sales\u order\u create grid-是否可以添加if语句?,php,sql,magento,Php,Sql,Magento,我需要sales_order_create网格来显示特价,我通过添加以下内容来实现这一点: ->addAttributeToSelect('special_price') 添加到_prepareCollection()函数,然后添加: $this->addColumn('special_price', array( 'header' => Mage::helper('sales')->__('Special Price'), 'column_css
->addAttributeToSelect('special_price')
添加到_prepareCollection()函数,然后添加:
$this->addColumn('special_price', array(
'header' => Mage::helper('sales')->__('Special Price'),
'column_css_class' => 'price',
'align' => 'center',
'type' => 'currency',
'currency_code' => $this->getStore()->getCurrentCurrencyCode(),
'rate' => $this->getStore()->getBaseCurrency()->getRate($this->getStore()->getCurrentCurrencyCode()),
'index' => 'special_price',
'renderer' => 'adminhtml/sales_order_create_search_grid_renderer_price',
));
到_prepareColumns()函数
这是可行的,现在有一个价格栏和一个特殊的价格栏
我的问题是,是否可以将这两列与if语句或类似语句组合在一起
理想情况下,我希望有一个价格栏,如果有,以粗体显示特殊价格,如果没有,则显示正常价格
如果特价不为空,则特价其他价格的想法是好的。但据我的理解,这根本不可能。这是因为特价和正常价格是两个不同的属性。
\u prepareColumn()
所做的是,它只需使用addColumn
为该方法中指定的每个属性创建一列
现在假设你有两份订单。设为订单A
和订单B
。对于订单A,我们有特别的价格,对于订单B,我们没有特别的产品。现在,如果我们试图分别显示这些列,它将破坏网格列表。即
NAME SPECIAL PRICE NORMAL PRICE
.........................................
Order A $10 nope
Order B nope $5
..........................................
第一行尝试隐藏正常价格列,而第二行尝试隐藏特殊价格列。这绝对是一种模棱两可的局面。因此,您不能只显示多个属性中的一个属性,因为您正在处理一个集合
希望你能抓住我 好问题。您是如何在集合中添加特殊价格字段的。显示代码嗨,我已经在我的原始问题中添加了整个_prepareCollection()函数,我希望这就是你的意思!这是有道理的!我想这会很棘手。没有办法添加一个列,并在该列中放置一个IF语句吗?没有。。据我所知,这是不可能的。你想要达到的目标是不可能的
NAME SPECIAL PRICE NORMAL PRICE
.........................................
Order A $10 nope
Order B nope $5
..........................................