run(" -6ren">
gpt4 book ai didi

magento - 如何将数据写入自定义字段中的 "sales_flat_order_payment"表?

转载 作者:行者123 更新时间:2023-12-02 16:16:51 24 4
gpt4 key购买 nike

在我的自定义模块中,我更改了表 sales_flat_order_ payment sales_flat_quote_ payment 并添加了两个新字段:

$installer->run("
ALTER TABLE `{$installer->getTable('sales/quote_payment')}` ADD `ep_entity` VARCHAR( 255 ) NOT NULL ;
ALTER TABLE `{$installer->getTable('sales/quote_payment')}` ADD `ep_reference` VARCHAR( 255 ) NOT NULL ;

ALTER TABLE `{$installer->getTable('sales/order_payment')}` ADD `ep_entity` VARCHAR( 255 ) NOT NULL ;
ALTER TABLE `{$installer->getTable('sales/order_payment')}` ADD `ep_reference` VARCHAR( 255 ) NOT NULL ;
");

在我的模型中,有以下函数将使客户端重定向到我的自定义成功页面:

public function getOrderPlaceRedirectUrl() {
return Mage::getUrl('mymodule/mymethod/success', array('_secure' => false));
}

在 Controller 中,有以下函数:

public function successAction()
{
$incrementId = Mage::getSingleton('checkout/session')->getLastRealOrderId();
$order = Mage::getModel('sales/order')->loadByIncrementId($incrementId);
$order->setEpReference('123456');
$order->save();
}

问题在于 sales_flat_order_ payment 表的 ep_reference 字段中没有记录任何数据。

如何将数据写入自定义字段中的sales_flat_order_ payment表?

我不想在表单中添加自定义字段,付款完成后会自动填充自定义字段。

最佳答案

我找到了解决方案:

public function successAction()
{
$incrementId = Mage::getSingleton('checkout/session')->getLastRealOrderId();
$order = Mage::getModel('sales/order')->loadByIncrementId($incrementId);

$payment = $order->getPayment();
$payment->setEpReference('123456');

$paymentQuote = $quote->getPayment();
$paymentQuote->setEpReference('123456');
$paymentQuote->save();

$order->save();
}

关于magento - 如何将数据写入自定义字段中的 "sales_flat_order_payment"表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34417923/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com