2012-07-17 120 views
0

我想添加一个属性mobilecustomer_address实体。当我从前端创建用户时,Magento没有保存这个属性值,但是当我从admin创建用户时它的工作原理。Magento自定义客户地址属性不保存

下面是代码片段

$installer->addAttribute('customer_address','trading2_mobile',array(
    'type'    => 'varchar', 
    'label'    => 'Mobile 2', 
    'input'    => 'text', 
    'global' => 1, 
    'visible' => 1, 
    'required' => 0, 
    'visible_on_front' => 1, 
)); 

$trading2_mobile = Mage::getSingleton('eav/config')->getAttribute('customer_address', 'trading2_mobile'); 
$trading2_mobile->setData('used_in_forms',array('customer_register_address','customer_address_edit','adminhtml_customer_address'))->save(); 

前端代码输入字段的

<div class="field"> 
    <label for="mobile2" class="required"><em>*</em><?php echo $this->__('Mobile 2') ?></label> 
    <div class="input-box"> 
    <input type="text" name="mobile2" id="mobile2" value="<?php echo $this->htmlEscape($this->getFormData()->getTrading2Mobile()) ?>" title="<?php echo $this->__('Mobile 2') ?>" class="input-text required-entry" /> 
</div> 
        </div> 

回答

1

名称和ID(对于JS验证)属性应该是 'trading2_mobile':

<input type="text" name="trading2_mobile" id="trading2_mobile" value="<?php echo $this->htmlEscape($this->getFormData()->getTrading2Mobile()) ?>" title="<?php echo $this->__('Mobile 2') ?>" class="input-text required-entry" /> 
相关问题