Учитывая приведенную ниже примерную схему, есть ли способ сделать «электронную почту» основным индексом в UserSchema вместо «_id» по умолчанию (при условии, что электронная почта всегда уникальна)?
Если возможно, будет ли лучше поиск по «электронной почте», если это основной индекс?
Также, в качестве альтернативы, возможно ли сделать первичный индекс для композитного или составного поля. Если это так, как будет выглядеть синтаксис первичного ключа для "firstName.firstName"?
В этом случае как StorySchema ссылается на UserSchema. Будет ли синтаксис выглядеть одинаково или иначе?
var mongoose = require("mongoose");
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const StorySchema = new Schema({
title: {
type: String,
required: true
},
body: {
type: String,
required: true
},
user: {
type: Schema.Types.ObjectId,
ref: 'users'
},
date: {
type: Date,
default: Date.now
}
});
mongoose.model('stories', StorySchema);
const UserSchema = new Schema({
_id: false,
email: {
type: String,
required: true
},
firstName: {
type: String
},
lastName: {
type: String
},
});
mongoose.model('users', UserSchema);