1
我已经从博客下载了一个模块,它工作正常。但我需要再添加两个文本框。如何在magento支付模块中添加自定义字段
class Excellence_Pay_Block_Info_Pay extends Mage_Payment_Block_Info
{
protected function _prepareSpecificInformation($transport = null)
{
if (null !== $this->_paymentSpecificInformation) {
return $this->_paymentSpecificInformation;
}
$info = $this->getInfo();
$transport = new Varien_Object();
$transport = parent::_prepareSpecificInformation($transport);
$transport->addData(array(
Mage::helper('payment')->__('Voucher #') => $info->getCheckNo(),
Mage::helper('payment')->__('Voucher Date') => $info->getCheckDate(),
Mage::helper('payment')->__('Field Date') => $info->getCheckField(), //custom field
Mage::helper('payment')->__('Field new') => $info->getCheckField1() //custom field
));
return $transport;
}
}
I change the code to this in block/info, and change some code in model/pay.php
public function assignData($data)
{
if (!($data instanceof Varien_Object)) {
$data = new Varien_Object($data);
}
$info = $this->getInfoInstance();
$info->setCheckNo($data->getCheckNo())
->setCheckDate($data->getCheckDate())
->setCheckField($data->getCheckField())
->setCheckField1($data->getCheckField1());
return $this;
}
,并添加一些代码等/ config.xml中
<fieldsets>
<sales_convert_quote_payment>
<check_no>
<to_order_payment>*</to_order_payment>
</a>
<check_date>
<to_order_payment>*</to_order_payment>
</check_date>
<check_field>
<to_order_payment>*</to_order_payment>
</check_field>
<check_field1>
<to_order_payment>*</to_order_payment>
</check_field1>
</sales_convert_quote_payment>
</fieldsets>
但它不能正常工作。 。我还更新了数据库并在pay.phtml中添加了一些输入文本框。
感谢的快速响应之前,请参考这里回答同样的问题。但是我对代码做了一些小的修改,并且运行得很完美。 – reylimjr 2012-02-27 09:52:59