Connect to mongodb, define schemas

This commit is contained in:
wancat committed 2023-07-19 15:30:36 +08:00
1 parent d51a75e5bc
commit 50443b96e0
13 files changed
+216 -12

No files matched your search

+10
View File
@@ -0,0 +1,10 @@
import mongoose from 'mongoose'
export default async function connectDB() {
try {
await mongoose.connect('mongodb://localhost:27017/odyssey-test')
console.log('Connected to MongoDB')
} catch (err) {
console.log(err)
}
}
+2
View File
@@ -5,11 +5,13 @@ import YAML from 'yaml'
import swaggerUI from 'swagger-ui-express'
import socketServer from './api/socket.js'
import connectDB from './db.js'
const port = 3000
const app = express()
const server = http.createServer(app)
socketServer(server)
connectDB()
const file = fs.readFileSync('./swagger.yaml', 'utf8')
const swaggerDocument = YAML.parse(file)
+3
View File
@@ -0,0 +1,3 @@
export { default as User } from './user.js'
export { default as Session } from './session.js'
export { default as Quest } from './quest.js'
+10
View File
@@ -0,0 +1,10 @@
import { model } from 'mongoose'
export default model(
'Quest',
{
name: String,
description: String,
},
{ timestamp: true }
)
+20
View File
@@ -0,0 +1,20 @@
import { model, Schema } from 'mongoose'
export default model(
'Session',
{
name: String,
containerId: String,
user: {
type: Schema.ObjectId,
ref: 'User',
},
quest: {
type: Schema.ObjectId,
ref: 'Quest',
},
finishedAt: Date,
terminals: [String],
},
{ timestamps: true }
)
+7
View File
@@ -0,0 +1,7 @@
import mongoose from 'mongoose'
export default mongoose.model('User', {
username: String,
password: String,
email: String,
})