Base backend code
This commit is contained in:
+65
@@ -0,0 +1,65 @@
|
||||
const Sequelize = require('sequelize');
|
||||
|
||||
const seqConn = new Sequelize({
|
||||
dialect: 'sqlite',
|
||||
storage: process.env.DB_STORAGE,
|
||||
pool: {
|
||||
max: 5,
|
||||
min: 0,
|
||||
acquire: 30000,
|
||||
idle: 10000,
|
||||
},
|
||||
logging: console.log,
|
||||
});
|
||||
|
||||
////// Sessions, Users //////
|
||||
// Sessions
|
||||
const Session = seqConn.define('Session', {
|
||||
sid: {
|
||||
type: Sequelize.TEXT,
|
||||
primaryKey: true
|
||||
},
|
||||
data: Sequelize.TEXT,
|
||||
expires: Sequelize.DATE,
|
||||
});
|
||||
|
||||
// User
|
||||
const User = seqConn.define('User', {
|
||||
username: {
|
||||
type: Sequelize.TEXT,
|
||||
unique: true,
|
||||
allowNull: false,
|
||||
},
|
||||
password: {
|
||||
type: Sequelize.TEXT,
|
||||
allowNull: false
|
||||
},
|
||||
power: {
|
||||
type: Sequelize.SMALLINT,
|
||||
allowNull: false,
|
||||
defaultValue: 0
|
||||
}
|
||||
});
|
||||
|
||||
// RegisteredDomain
|
||||
const RegisteredDomain = seqConn.define('RegisteredDomain', {
|
||||
domain: {
|
||||
type: Sequelize.TEXT,
|
||||
unique: true,
|
||||
allowNull: false
|
||||
},
|
||||
owner: {
|
||||
type: Sequelize.BIGINT.UNSIGNED,
|
||||
allowNull: false
|
||||
}
|
||||
});
|
||||
|
||||
////// Exports //////
|
||||
module.exports = {
|
||||
db: seqConn,
|
||||
models: {
|
||||
Session,
|
||||
User,
|
||||
RegisteredDomain
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user