如何为议程程序进行实时更改的API?

时间:2018-08-19 06:29:44

标签: node.js mongodb api express

我正在使用Node express和mongoDB创建事件管理应用程序。基本上,它具有3个模型,分别为UserProgrammeEventProgramme可能包含多个事件,例如Sports-Meet是一个Programme。它包含以下事件:

1. Welcoming Chiefguest
2. Silence Pray
3. Hoist the Flag
4. Mark Fast
5. Lightning the Torch
6. Events
7. Interval Programme
8. Prize giving
9. Vote of Thanks

这些事件具有order属性,以确定在哪个事件之后的哪个事件。基本上,这是运动会计划中事件的顺序。但是用户可以在事件进行过程中更改事件顺序,那时其他观众正在观看事件(议程)列表,而用户将事件的顺序更改(例如,将电筒从5更改为4),立即显示给观众。如何在API级别执行此请求?

以下是上述模型的架构:

UserModel.js

const mongoose = require('mongoose');

const UserSchema = mongoose.Schema({
    name: {type:String},
    email: {type:String},
    password: {type:String}
},
{timestamps:true}
);

module.exports = mongoose.model('User', UserSchema);

ProgrammeModel.js

const mongoose = require('mongoose');

const programmeSchema = mongoose.Schema({
    name: { type: String, required: true },
    timefrom: { type :Date,required: true },
    timeto: { type :Date,required: true },
    status: { type: String, required: true },
    venue: { type: String, required: true },
    timetype: { type: Number, required: true },
    protype: { type: String, required: true },
    userid:{ type:mongoose.Schema.Types.ObjectId,ref : 'User', required: false },
    logo :{ type: String, required: true }

});

module.exports = mongoose.model('Programme', programmeSchema);

EventModel.js

const mongoose = require('mongoose');

const eventSchema = mongoose.Schema({
    name: { type: String, required: true },
    timefrom: { type :Date,required: true },
    timeto: { type :Date,required: true },
    status: { type: String, required: true },
    proid: { type:mongoose.Schema.Types.ObjectId,ref :'Programe', required: true},
    proorder: { type: String, required: true }
});

module.exports = mongoose.model('Event', eventSchema);

0 个答案:

没有答案