数据库中的Prestashop和null字段

数据库中的Prestashop和null字段,prestashop,prestashop-1.5,Prestashop,Prestashop 1.5,我有一段非常简单的代码: $dropOrder = new DropOrder($dropOrderId); $dropOrder->is_supplier_paid = $payValue; $dropOrder->save(); 它工作并将“供应商是否已付款”字段值保存到数据库中。但它也会执行意外操作,并用0值填充所有空值字段 我试着这样保存它: $dropOrder->save(true); 但我仍然有同样奇怪的行为。我只想更改一个字段,而不想更改其他字段。值在插入/

我有一段非常简单的代码:

$dropOrder = new DropOrder($dropOrderId);
$dropOrder->is_supplier_paid = $payValue;
$dropOrder->save();
它工作并将“供应商是否已付款”字段值保存到数据库中。但它也会执行意外操作,并用0值填充所有空值字段

我试着这样保存它:

$dropOrder->save(true);

但我仍然有同样奇怪的行为。我只想更改一个字段,而不想更改其他字段。

值在插入/更新之前由ObjectModel::formatValue()根据$定义中声明的字段类型进行格式化

您必须使用TYPE_NOTHING来允许空值,这是唯一的方法


查看配置类中的id\u shopid\u group\u shop字段。

值在插入/更新之前由ObjectModel::formatValue()根据$definition中声明的字段类型进行格式化

您必须使用TYPE_NOTHING来允许空值,这是唯一的方法

查看配置类中的id\u shopid\u group\u shop字段。

PrestaShop 1.7:

我在PS1.7中遇到了同样的问题,设置TYPE_NOTHING不足以解决这个问题。在我的例子中,我还需要在字段定义中将
allow_null
添加到
true

'my_field' => ['type' => self::TYPE_NOTHING, 'allow_null' => true, 'value' => null]
'value'=>null
可能不是必需的,但建议使用)

PrestaShop 1.7:

我在PS1.7中遇到了同样的问题,设置TYPE_NOTHING不足以解决这个问题。在我的例子中,我还需要在字段定义中将
allow_null
添加到
true

'my_field' => ['type' => self::TYPE_NOTHING, 'allow_null' => true, 'value' => null]

'value'=>null
可能不是必需的,但建议使用)

非常感谢。非常有用的信息。我哪儿也没找到。你救了我的命,非常感谢。非常有用的信息。我哪儿也没找到。你救了我的命。