在一页结帐时,自定义属性字段不保存到数据库Magento 1.6?

时间:2011-12-29 09:47:13

标签: mysql magento

有人可以帮忙吗?

我创建了一个带有2个自定义字段的新模块似乎都工作正常接受其中一个字段不会通过onepage结帐流程保存到db?

我可以通过注册页面(register.phtml)输入数据,并通过编辑帐户页面(edit.phtml)编辑数据,这一切都保存到db ok。

其中一个字段是一个select字段,它从Model / Entity获取选项,此字段保存正常,两个字段在config.xml文件中具有相同的条目。

我在billing.phtml

中尝试了各种版本的输入
    <?php if(!$this->isCustomerLoggedIn()): ?>
    <li>    
    <label for="billing:childname" class="required"><em>*</em>
    <?php echo   $this->__('Childs Name') ?>
    </label>
    <div class="input-box">
    <input type="text" name="billing[childname]" id="billing:childname" 
    value="<?php echo $this->htmlEscape($this->getQuote()->getCustomerChildname()) ?>" 
    title="<?php echo $this->__('Childs Name') ?>" 
    class="input-text validate-text required-entry" />
    </div> 
    </li>

另外:value =“htmlEscape($ this-&gt; getCustomer() - &gt; getChildname())?&gt;”

但我尝试的任何事情似乎都没有任何想法可以解决什么问题?

非常感谢

1 个答案:

答案 0 :(得分:1)

为了在DB中保存'childname'属性,我们需要先将此值保存在'sales_flat_quote'表中。

请按照步骤将字段保存到数据库中。

第1步:通过运行以下查询,在sales_flat_quote中添加新列。

ALTER TABLE  `sales_flat_quote` ADD  `customer_childname` INT NOT NULL

第2步:现在转到您的模块config.xml文件并粘贴到全局块中的fieldsets代码下面,如果您没有自己的模块,则将其粘贴到任何其他模块中

<global>
     //.....................
     <fieldsets>
       <checkout_onepage_quote>
         <customer_childname>
             <to_customer>childname</to_customer>
         </customer_childname>
       </checkout_onepage_quote>
        <customer_account>
            <childname>
                <to_quote>customer_childname</to_quote>
            </childname>
        </customer_account>     
      </fieldsets>
      //......................
</global>

现在检查一下:)