8

モデルの create メソッドでそれらを定義しない場合、DB で定義された defaultValues を挿入するフラグ omitNull を持つ Sequelize のインスタンスがあります。このような:

var sequelize = new Sequelize('db', 'user', 'pw', {
  omitNull: true
})

しかし、他のモデルを null として定義する場合は、null 値を挿入したいと考えています。お気に入り:

SomeModel.create({some_property: null});

モデルの一部のプロパティに対してのみ omitNull プロパティを定義する方法はありますか?

4

3 に答える 3

7

オプションを使用omitNull = trueする場合、sequelize を強制的にプロパティ null に設定する方法があります。

次のようなことをしてください:

SomeModel.some_property = null;
SomeModel.save(['some_property']);

これにより、sequelize は、 に対して NULL を使用して更新/挿入 SQL を作成するように強制されますsome_property

お役に立てば幸いです。

于 2014-08-02T14:25:50.633 に答える
1

Sequelize < v2.0 を使用している場合、よりハックな代替ソリューションは次のようになります。

sequelize.options.omitNull = false;

SomeModel.some_property = null;
SomeModel.save();

sequelize.options.omitNull = true;
于 2016-07-12T19:25:05.247 に答える