这两种语法有什么区别?
1) Mage::getModel('目录/产品')->load('1');
2) Mage::getResourceModel('目录/产品')
最佳答案
Mage::getModel()
每次配置中存在这样的对象时,Mage::getModel() 都会创建一个对象的新实例。
示例
$product1 = Mage::getModel('catalog/product');
$product2 = Mage::getModel('catalog/product');
$product1 和 $product2 具有相同对象的不同时刻,并且占用不同的内存
Mage::getResourceModel()
据我所知,Magento 中的所有集合都是资源模型。它们由
实例化Mage::getResourceModel()
或
Mage::getModel()->getCollection()
您使用哪个功能并不重要;后者只是调用第一个。 Magento 团队只是选择将集合作为资源的一部分,可能是因为集合需要大量查询数据库。通常,除了集合之外,您不必为任何其他内容调用 Mage::getResourceModel()
。
请参阅下面的链接。 http://alanstorm.com/magento_models_orm
关于php - magento中资源模型和模型的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38559876/