在网上无休止的搜索后,我终于放弃了这件事。我试图为 magento (在我的情况下为 1.6.2.0 )制作一个脚本,以便以编程方式将已创建的属性(在我的情况下为“techpage”)分配给“常规”组中的所有属性集。
从一开始就进行 Goog 计划可以节省大量时间,我正在努力学习这一点!
有人可以告诉我我做错了什么吗?
<?php
require_once('app/Mage.php'); //Path to Magento
umask(0);
Mage::app('default'); // Change default to whatever store you want to run
$model=Mage::getModel('eav/entity_setup','core_setup');
$attributeId=$model->getAttribute('catalog_product','techpage');
$allAttributeSetIds=$model->getAllAttributeSetIds('catalog_product');
foreach ($allAttributeSetIds as $attributeSetId) {
try{
$attributeGroupId=$model- >getAttributeGroup('catalog_product',$attributeSetId,'General');
}
catch(Exception $e)
{
$attributeGroupId=$model->getDefaultArrtibuteGroupId('catalog/product',$attributeSetId);
}
$model- >addAttributeToSet('catalog_product',$attributeSetId,$attributeGroupId,$attributeId);
}
?>
当我在浏览器中运行它时,该死的瘦子吐出来了
“致命错误:未捕获的异常‘PDOException’
带消息
'SQLSTATE [23000]:完整性约束违规:1452 无法添加或更新子行:外键约束失败“
当谈到 php 和 magento 时,我并不完全是你所说的“棚子里最锋利的工具”,但在我的搜索中,我发现很多像我一样的新手在寻找同样的东西,但对这个困境没有答案。
对此的任何帮助都会大大增加我的夜间睡眠时间:) 我也打赌其他人,谢谢。