Magento 模型集合 - 保存数据

标签 magento

所以我使用此代码加载一系列产品:

$magento_time= 'some time string';
$collection = Mage::getModel('catalog/product')->getCollection();
$collection->addFieldToFilter(array(
    array('attribute'=> 'updated_at', 'gt'=> date('Y-m-d H:i:s', strtotime($magento_time))),
));    
$collection->save();

并在保存时收到此错误:

Warning: Invalid argument supplied for foreach()  in /var/www/magento/app/code/core/Mage/Eav/Model/Entity/Abstract.php on line 970

#0 /var/www/magento/app/code/core/Mage/Eav/Model/Entity/Abstract.php(970): mageCoreErrorHandler(2, 'Invalid argumen...', '/var/www/magent...', 970, Array)
#1 /var/www/magento/app/code/core/Mage/Eav/Model/Entity/Abstract.php(925): Mage_Eav_Model_Entity_Abstract->_collectSaveData(Object(Mage_Catalog_Model_Product))
#2 /var/www/magento/app/code/core/Mage/Core/Model/Abstract.php(251): Mage_Eav_Model_Entity_Abstract->save(Object(Mage_Catalog_Model_Product))
#3 /var/www/magento/app/code/core/Mage/Eav/Model/Entity/Collection/Abstract.php(845): Mage_Core_Model_Abstract->save()
#4 /var/www/magento/app/code/local/MyModule/controllers/IndexController.php(16): Mage_Eav_Model_Entity_Collection_Abstract->save()
#5 /var/www/magento/app/code/core/Mage/Core/Controller/Varien/Action.php(376): MyModule_IndexController->sayHelloAction()
#6 /var/www/magento/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(248): Mage_Core_Controller_Varien_Action->dispatch('sayHello')
#7 /var/www/magento/app/code/core/Mage/Core/Controller/Varien/Front.php(158): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#8 /var/www/magento/app/Mage.php(459): Mage_Core_Controller_Varien_Front->dispatch()
#9 /var/www/magento/index.php(68): Mage::run()
#10 {main}

产品加载到产品系列后,如何将产品保存回数据库?

最佳答案

更改以下内容对我有用:

手动设置当前商店:

Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);

独立保存每个集合。

foreach ($collection as $entry) {
  $entry->save();
}

编辑:

请注意,自从大约 2.5 年前我第一次提出这个问题以来,Magento API 已经发生了显着变化 - 这个答案可能不再适用。

关于Magento 模型集合 - 保存数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1760980/

相关文章:

php - 使用magento制作一个没有索引的好url

mysql - magento 表 "sales_flat_order"字段 "protect_code"说明

php - 我需要将联系表单数据存储到数据库中我做了一些代码,但在 IndexController.php 中出现错误

php - Magento 网站因移动而无法正常工作

php - Magento 按路径获取类别

php - Magento - 出生日期文本位于 3 个文本字段之上

magento - 使用 Magento 方法编写插入查询,小心 SQL 注入(inject)

magento - Google Analytics(分析)显示了由空网址产生的数百个404

php - 无法保存库存项目。请再试一次。 Magento 2.4.0

collections - 如何删除magento产品集中的所有元素?