web-dev-qa-db-ja.com

mongoose文字列スキーマタイプのデフォルト値を空白にして、フィールドをオプションにします

私はnodejsにmongooseを使ったテストスキーマがあります

testschema = mongoose.Schema({
         name:{
    type:String,
    required:true,
    unique:true
  },
  image:{
    type:String,
    required:true
  },
  category:{
    type:String
  },
});

カテゴリフィールドをオプションにして、ユーザーから指定されていない場合はデフォルトで空白にするにはどうすればよいですか?

私は試した

 category:{
        type:String,
        optional: ''
      },

ただし、スキームで保存されたドキュメントを印刷すると、フィールドカテゴリも表示されません。

11
Joseph T F

ここで必要になる可能性が最も高いのは、default値セットです。

category: {
    type: String,
    default: ''
}

設定しない場合、デフォルトで''になるため、このフィールドは多少オプションになります。

21