我有一个注册流程,并且第一页只要求您提供电子邮件和密码。下一页询问国家,州(可选)和城市。
在猫鼬模型中,我将所有字段都设置为<button id="cmd" onclick="savePDF()">generate PDF</button>
,但是直到第二页才为国家,州和城市分配值,因此需要将其分配给required
或其他一些空值或虚假值。
null
当猫鼬的SchemaType必须为必填字段时,如何为它分配一个const User = mongoose.Schema({
email: {
type: String,
required: true
},
password: {
type: String
},
country: {
type: String,
required: true,
},
state: {
type: String,
default: null,
required: false,
},
city: {
type: String,
required: true,
},
});
值?
答案 0 :(得分:1)
As per the docs required
可以是布尔值,也可以是应返回布尔值的函数。长话短说,您可以创建一个函数来检查值是字符串还是null并返回true。
示例:
const User = mongoose.Schema({
email: {
type: String,
required: true
},
country: {
type: String,
required: function() {
return typeof this.country === 'undefined' || (this.country != null && typeof this.country != 'string')
}
}
});