база данных noob здесь с использованием MongoDB, в моей программе у меня есть пользователи, и ядром моей программы являются эти дорожные карты, которые я отображаю.Таким образом, каждый пользователь может создавать дорожные карты, сохранять другие дорожные карты, бла-бла ... У каждого пользователя есть поля с именами saveRoadmaps и madeRoadmaps, в которых должны храниться дорожные карты.Мой вопрос заключается в том, должен ли я просто хранить дорожные карты _ids в поле saveRoadmap и creationRoadmaps или во всей дорожной карте?
Я спрашиваю об этом, потому что кажется, что сохранение только _id дорожных карт может спасти хранилище, но это может не пригодиться, когда мне сначала нужно получить данные пользователя, а затем получить дорожную карту с помощьюИдентификатор дорожной карты в пользовательском поле SavedRoadmap / создалRoadmap, в отличие от простого извлечения пользователя, и поле SavedRoadmap уже будет иметь дорожную карту там.
И, между прочим, есть какой-нибудь приятный и краткий дизайн базы данных, пожалуйста, направьте меня к кому-нибудь, если вы знаете какой-либо!
Для пользователя, я хочу, чтобы у него было имя, адрес электронной почты, пароль, описание курса, а также сохраненные дорожные карты и созданные дорожные карты.Пользователь может создавать неограниченные дорожные карты, а также сохранять столько, сколько он или она хочет.Для дорожной карты я хочу, чтобы у нее было имя, категория, time_completion, автор, дата и объект дорожной карты, который будет содержать фактическую строку json, которую я буду использовать для отображения d3.Вот моя Схема пользователя и Схема проезда прямо сейчас:
const RoadmapSchema = new Schema({
author: {
type: String,
require: false
},
name: {
type: String,
require: true
},
category: {
type: String,
require: true
},
time_completion: {
type: Number,
require: true
},
date: {
type: Date,
default: Date.now
},
roadmap: {
type: "object",
require: true
}
});
и Схема пользователя:
const UserSchema = new Schema({
name: {
type: String,
required: true
},
email: {
type: String,
required: true
},
password: {
type: String,
required: true
},
date: {
type: Date,
default: Date.now
},
savedRoadmap: {
type: "object",
default: []
},
createdRoadmap: {
type: "object",
default: []
}
});
Мой вопрос, внутри полей saveRoadmap и creationRoadmap поляПользовательская схема, я должен включить только _id дорожной карты, или я должен включить всю строку json, которая представляет дорожную карту?