Php Magento sales\u order\u create grid-是否可以添加if语句?

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

我需要sales_order_create网格来显示特价,我通过添加以下内容来实现这一点:

->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
   ..........................................