繁体   English   中英

Magento-客户地址中的自定义属性,在结帐时未复制到sales_flat_order_address和sales_flat_quote_address

[英]Magento - Custom attribute in customer address, not copied to sales_flat_order_address and sales_flat_quote_address on checkout

我在客户地址中创建了一个新属性“县”。 它工作正常,我可以从前端在此字段中保存值。

我希望此字段在订单地址中可用。 因此,我在表格中添加了“县”列

“ sales_flat_quote_address”和“ sales_flat_order_address”

然后,我修改了Sales / etc / config.xml以将该字段包括在字段集中。 我已经在此字段中添加了条目

sales_copy_order_billing_address,
sales_copy_order_shipping_address,
sales_convert_quote_address,
sales_convert_order_address,
customer_address

但是,当我进行一页结帐时,此字段中的值不会按订单复制到地址中。 我在结帐时选择了一个现有地址,该地址在此字段中具有值,以作为帐单和收货地址。

目前,我尚未在签出中编辑任何模板文件来包含此字段。 但是当我选择一个现有地址时,这不应该引起问题,对吗?

我正在使用magento 1.5.1.0。 虽然我很了解php,但是我还是magento的新手。

我已经检查了Magento问题:在结帐中保存自定义地址属性,并做了答案中给出的所有操作。

我错过了什么吗? 如果是这样,请提供您的建议。 谢谢。

您是否已在Sales / etc中检出Config.xml,并查看了“ sales_copy_order_billing_address”部分。

这定义将哪一列从table1复制到table2中的“映射的列”。

因此,无论将数据复制到“送货地址”和“帐单地址”的位置,都将“县”添加到列表中。

当执行以下代码时,将使用XML映射:

Mage::helper('core')->copyFieldset('customer_address', 'to_quote_address', $address, $this);

第一个参数是“ from table column”节点映射,第二个参数是“ to table column”映射。

希望这行得通。

在模块的config.xml文件之一中尝试此操作...

<global>
...
    <fieldsets>
        <customer_address>
            <county>
                <to_quote_address>*</to_quote_address>
                <to_order_address>*</to_order_address>
            </county>
         </customer_address>
    </fieldsets>
...
</global>

确保在两个表( sales_flat_quote_addresssales_flat_order_address )中都创建了County字段。

我已经尝试过了,并且对我有用,请将此xml代码添加到我们的模块config.xml文件中

<global>
        <fieldsets>
            <sales_convert_quote_address>
                <govt_id>
                    <to_order_address>*</to_order_address>
                    <to_customer_address>*</to_customer_address>
                </govt_id>
            </sales_convert_quote_address>
            <customer_address>
                <govt_id>
                    <to_quote_address>*</to_quote_address>
                </govt_id>
            </customer_address>
        </fieldsets>
    </global>

您是否也清除/禁用了缓存? 也不要修改核心配置文件,更好地创建模块并使用自己的扩展字段集

我已经做好了。 我不必添加任何其他内容。

问题是,我已将config.xml从app / code / core / Mage / Sales / etc复制到app / code / local / Mage / Sales / etc,并在新文件中进行了更改。

当我对原始config.xml文件本身进行更改并进行测试时,自定义字段值在结帐时已复制到订单地址。

谢谢。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM