Как справиться с нормализацией на коллекциях mongoDB? - PullRequest
0 голосов
/ 04 марта 2019

Существует две коллекции Employee и 'Project', Необходимо вести историю распределений проектов для сотрудников, а также на основе проектов.

Я создал схему коллекции, но онадублирует данные, есть ли другой способ добиться этого?

Схема сотрудника

const employeeSchema = mongoose.Schema({
    name: {
        type: String,
        required: true
    },
    project: {
        start: {
            type: Date,
            required: true
        },
        end: {
            type: Date,
            required: true
        },
        project: {
            type: mongoose.Schema.Types.ObjectId,
            ref: 'Project',
            required: true
        }
    },
}

Схема проекта

const projectSchema = new mongoose.Schema({
    name: {
        type: String,
        required: true
    },
    employee: {
        start: {
            type: Date,
            required: true
        },
        end: {
            type: Date,
            required: true
        },
        project: {
            type: mongoose.Schema.Types.ObjectId,
            ref: 'Employee'
        }
    }
});

Или я могу создать отдельную коллекцию для отображения проекта и сотрудника?если я сделаю это, то в чем разница между MongoDB и RDBMS?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...