私はポート番号を格納しているmongooseスキーマを持っています。私はまた、フィールドに設定されているデフォルト値を持っています。MongooseはNumberフィールドにnullを受け入れます。
私のAPIから値が得られない場合は、1234
に設定されます。 ただし、誰かがnull
を送信した場合は、null
を受け取り、データベースに保存します。
null
を1234
に変換しないでください。 null
は数字ではありません!それを間違って理解していますか?
私はhere与えられた解決策を検討していますが、私は(私が間違っているとその1234
にnull
を変換することになっていない限り)それなしで動作するはずです何かのために余分なコードを追加したいいけない
:あるいは
undefined
一切(明示的な)はありませんでしたnull
値を追加します。 /ヌル)は、マングースの "型"の基礎が基づいています。だから、単純なバリデーター(単純なバリデータで行うことができます)を投げたり、 "デフォルト"の値で 'null 'を置き換えることで生きることができるかどうかは、あなたが言及しているように" pre "フックで行われます。代わりに、入力が 'null'の代わりに' undefined'であることを確認し、 'default'が期待どおりに動作するようにしてください。 –下記の[私の答え](https://stackoverflow.com/questions/45208127/mongoose-accepts-null-for-number-field/45211501#45211501)は役に立ちましたか?コメントはありますか? – rsp