使用取自csv文件的值更新现有产品(Magento CE 2.1.5)属性,当值不为空时字符串没有问题,但是当尝试保存空字符串时,产品属性值具有尚未更新
$product->setWidth("");
$product->save();
产品保存后的结果是属性值保持与更新前相同的值。 尝试了其他几种方法,其他地方提到但没有结果
$product->setWidth(""); //does nothing
$product->setData("width",""); //does nothing
$product->unsetData("width"); //does nothing
$product->setWidth(new \Zend_Db_Expr('')); //does nothing
$product->setData("width",null); //does nothing
$product->save();
所以问题是什么是正确的方法呢?那么想知道设置magento 2.x属性emtpy的正确方法是什么?
答案 0 :(得分:0)
如果我们尝试将其设置为null,则该属性采用“默认”值。
使用$product->setWidth(' ')
代替,基本上设置空格而不是null可以解决问题。
收集数据时,请使用if (!empty($product->getWidth())) { ... }
。