2013-07-29 4 views
6

モデルの作成メソッドで定義していない場合、DBに定義されているdefaultValuesを挿入するために、フラグをomitNullに設定してSequelizeのインスタンスを作成しました。このように:Sequelizeにnull値を挿入するにはどうすればいいですか?

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

null値をnullとして定義すると、他のモデルにnull値を挿入したいと考えています。 Like:

SomeModel.create({some_property: null}); 

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

答えて

5

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

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

これはsome_propertyためNULLで更新/挿入のSQLを作成するsequelizeを強制します:

はちょうどこのような何かを行います。

私はそれが役に立ちそうです。

+0

になり、私は今日、この問題に出くわしたとあなたのソリューションは私のためにうまく機能しています。 @vistur:この回答に同意してください –

0

あなたはsequelize < V2.0、hackierを使用している場合は、代替ソリューションは

sequelize.options.omitNull = false; 

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

sequelize.options.omitNull = true; 
関連する問題