【问题标题】:Magento Payment Info BlockMagento 支付信息块
【发布时间】:2012-02-28 09:12:26
【问题描述】:

我创建了新的付款方式(网关)。在这个网关中,我将信息发送到银行进行信用支付,并使用一些额外的支付选项,如姓名/个人年龄/个人利润/信用期限/...

我通过这个字段计算信用期限并将所有这些数据发送到银行。

我想在付款方式信息块中显示此信息(默认主题中的右侧边栏),但我不想将此字段保存到数据库中(因此稍后在管理区域中我将获得类似标准检查/汇票付款和付款方式名称将是另一个)

我无法在支付方式信息块中显示此字段,因为它仅显示存储在数据库中的字段以及我找到的唯一方法 - 将此数据存储在核心/会话中,然后在信息块中检索此数据

我在支付模型中做了这样的事情:

class OS_LacPayCS_Model_Payment extends Mage_Payment_Model_Method_Abstract
{
...
public function assignData($data)
{
    parent::assignData($data);
    $session = Mage::getSingleton('core/session');
    $session->setData('payment_additional', $data);
    return $this;
}
...
}

然后得到它

class OS_LacPayCS_Block_Payment_Info extends Mage_Payment_Block_Info
{
...
public function getPaymentInfo()
{
    $session = Mage::getSingleton('core/session');
    return $session->getData('payment_additional');
}
...
}

还有其他方法可以获取这些数据吗?

我还想在结帐时在订单审核选项卡中添加一些额外的行,如何在不重写审核模板和阻止的情况下添加它们?

感谢

【问题讨论】:

    标签: magento payment-gateway payment


    【解决方案1】:

    Magento 支付 api 定义了附加信息字段,该字段作为序列化数组保存到数据库,您可以使用该字段来存储您可能需要显示的数据。您可以通过 assignData($data) 方法将数据设置到那里

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-23
      • 2011-12-15
      • 2013-07-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多