[英]Load magento model that doesn't exist
我正在将数据从旧网站转换为新网站。 我正在一个扩展Mage_Shell_Abstract
的类中创建和填充客户。
我想加载一个客户(如果他们已经存在),或者如果他们不存在则创建它们:
$customer = Mage::getModel('customer/customer')->loadByEmail('none@gmail.com');
$customer->setFirstName('John');
$customer->setLastName('Smith');
$customer->save();
如果此电子邮件中不存在客户,此代码是否会导致任何错误?
不确定“不存在的magento模型”究竟是什么意思,但如果你指的是customer/customer
模型,它应该有效。
如果您在run()
方法中,那么Mage::app()
已经在Mage_Shell_Abstract
的__construct()
方法中Mage_Shell_Abstract
,因此您可以从该上下文中访问所有模型和其他magento功能。
因此getCustomerByEmail()
将像正常情况一样工作,以及该模型或任何其他方法上的所有其他方法。
你应该能够做到:
$customer = Mage::getModel('customer/customer')->loadByEmail('none@gmail.com');
if (!$customer->getId()) {
// Create customer
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.