我正在编写一个mongoose架构,我想了解它的属性。
这是我的架构:
var UserSchema = new Schema({
name: String,
username: { type: String, required: true, index: { unique: true }},
password: { type: String, required: true, select: false }
});
required
宣布?required
- true / false -means?select
- 应该宣布为什么?答案 0 :(得分:7)
为什么不要求'name' - ?
答案:当字段必须填写时,在这种情况下我们会根据需要提及。所以这里" name"不是必填字段或必填字段。
为什么“需要”'声明吗
回答:如上所述,当一个字段必须填写时,那么在这种情况下我们会根据需要提及。
什么是select - true / false -means?
回答:这意味着在您获取文档时,默认情况下不会在数据中返回它。您可以指定默认情况下是否应在查询结果中包含或排除此路径。
当索引 - 应该声明为什么?
答案:当您经常在该字段上搜索数据时应声明索引,因此当您在该字段上创建索引时,在该情况下,它不搜索所有集合中的该字段,它将搜索值对于那个使用索引的字段,将很快返回结果。
答案 1 :(得分:1)
在这里,这些作为您项目的模型。因此,required用作验证,索引作为该字段的索引
现在您有两种方式:
JS/Jquery
然后使用长途路径现在您的回答:
Name
并非必须填写。这就是为什么没有required
被放在那里。required
。True/False
启用或禁用该字段的验证用法。如果你使用虚假手段填写该领域根本不是强制性的。但是使用false
被认为是一种很好的做法。read/search
操作期间提高性能。它提高了操作速度并存储在内存中。 答案 2 :(得分:0)
无论何时我们必须验证特定字段,因此我们都使用required。 required:true表示您必须填写该字段。 必填:false表示您可能填写或未填写该字段,但这是一个好习惯。