【问题标题】:Create Account - Last name required, even when value given创建帐户 - 需要姓氏,即使给定值
【发布时间】:2013-05-01 19:12:24
【问题描述】:

Magento 版本。 1.7.0.2

创建帐户 (/customer/account/create) 时,我收到错误“姓氏不能为空”。即使我输入了姓氏。

在控制器中...

/app/code/core/Mage/Customer/controllers/AccountController.php

..我在第 277 行添加了一个 var_dump() (createPostAction)

// die(var_dump($_POST));
// result

array(7) { 
["success_url"]=> string(0) "" 
["error_url"]=> string(0) "" 
["firstname"]=> string(3) "Jon" 
["lastname"]=> string(8) "Chambers" 
["email"]=> string(21) "abcd@hotmail.com" 
["password"]=> string(8) "password" 
["confirmation"]=> string(8) "password" 
}

“姓氏”正在 $_POST 中传递,但未添加到 $customerData。

// die(var_dump($customerData));
// Result

array(2) { 
["firstname"]=> string(3) "Jon" 
["email"]=> string(21) "clhosting@hotmail.com" 
}

有没有人遇到过这种情况或知道解决方法?

谢谢。

编辑:

这是一条漫长的道路……感谢 Slayer Birden 让我朝着正确的方向开始。 从那里我看到 lastname 没有在任何输入中注册(创建帐户、客户信息等)。

我结束了替换所有[database]_customer_... 表。 这让我重回正轨,一切都恢复正常了,唷!

【问题讨论】:

    标签: magento controller account


    【解决方案1】:

    如果您检查方法Mage_Eav_Model_Form::extractData,您会看到它迭代实体属性并尝试为它们设置数据。

    因此,您需要检查您是否具备所有客户属性。

    【讨论】:

    • 谢谢Slayer,上面有解释。
    猜你喜欢
    • 1970-01-01
    • 2013-03-24
    • 1970-01-01
    • 2013-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-27
    • 2015-11-01
    相关资源
    最近更新 更多