从数据库中删除产品属性值

时间:2012-03-07 00:01:49

标签: magento

说我有store = 3的price属性值和store = 1的另一个值,如何使用magento模型从catalog_id = 3和attribute_id = 69的catalog_product_entity_decimal中删除?

与此问题类似:Magento EAV: how to hard delete an attribute value?

2 个答案:

答案 0 :(得分:0)

这样的东西?

// get store 1
$this->setCurrentStore('codeforstore1'); 
$product->setData('price',null);
or
$product->setPrice(null);
$product->save();

// get store 2
$this->setCurrentStore('codeforstore2'); 
$product->setData('price',null);
or
$product->setPrice(null);
$product->save();

这将以编程方式摆脱它。

另一个选择是做这样的事情:

DELETE DATA
$id is the database table row id to be deleted.
// $id = $this->getRequest()->getParam('id');
$id = 13;
$model = Mage::getModel('catalog/resource_eav_attribute');
try {
        $model->setId($id)->delete();
        echo "Data deleted successfully."; 
    } catch (Exception $e){
        echo $e->getMessage();
}

HTH

答案 1 :(得分:0)

<?php
$product->setStoreId($storeId)->load($id);
$product->setAttributeCode(false);
$product->save();

此代码将从商店$ storeId。

中删除属性attribute_code的值