【问题标题】:Magento - adding custom attribute to extended core Customer moduleMagento - 将自定义属性添加到扩展的核心客户模块
【发布时间】:2012-08-08 08:42:08
【问题描述】:

您必须向客户添加自定义属性。所以我扩展了核心客户模块,这些是涉及的文件和目录树:

//app/code/local/Nauba/etc/config.xml

<?xml version="1.0"?>
<config>
<modules>
    <Nauba_Customer>
        <version>0.0.1</version>
    </Nauba_Customer>
</modules>

<global>
    <models>
        <customer>
            <rewrite>
                <customer>Nauba_Customer_Model_Customer</customer>
            </rewrite>
        </customer>
    </models>     
</global>   
</config>


 // app/code/local/Nauba/Customer/Model/Customer.php

class Nauba_Customer_Model_Customer extends Mage_Customer_Model_Customer
{
    function _construct()
    {
        parent::__construct();
    }
}




// app/etc/modules/Nauba_Customer.xml

<?xml version="1.0"?>
<config>
<modules>
    <Nauba_Customer>
        <active>true</active>
        <codePool>local</codePool>
   </Nauba_Customer>
</modules>
</config>






//app/code/local/Nauba/Customer/sql/nauba_customer_setup/mysql4-upgrade-1.6.2.0.2-1.6.2.0.3.php

$installer = $this;
$installer->startSetup();
/**
 * Adding custom attributes to customer
 */

$installer->addAttribute('customer', 'elite_invitation', array(
    'label'             => 'ID prodotto invito Elite',
    'type'              => 'varchar',
    'visible'           => true,
    'visible_on_front'  => false,
    'required'          => false,
    'backend'           => '',
    'frontend'          => '',
    'input'             => 'text',
    'global'            => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_WEBSITE
));


$installer->endSetup();

现在模块已启用,并使用新的自定义模型代替核心 Mage_Customer,但未执行 sql 升级。知道出了什么问题吗?

感谢卢克

【问题讨论】:

  • 你怎么能说使用新模型而不是 Mage_Customer?
  • @KalpeshMehta 放入模板 Mage::log(var_export($customer, true)),并看到该类是 Nauba_Customer_Model_Customer
  • 不错不错。现在按照@Jerzy 的建议在 config.xml 中包含资源节点。

标签: magento-1.4 magento-1.5 magento-1.6 magento


【解决方案1】:

你必须在全局下的xml中定义“资源”

    <resources>
      <nauba_customer_setup>
         <setup>
             <module>your module name</module>
         </setup>
      </nauba_customer_setup>
     </resources>

【讨论】:

  • 谢谢。现在我的设置已执行,但我在后端的客户帐户信息部分看不到我的属性。我正在寻找其他模块的其他升级,我在本地找到一些有用的东西,但我仍然没有找到任何东西......有什么帮助吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-01-23
  • 1970-01-01
  • 1970-01-01
  • 2016-06-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多