63 lines
1.1 KiB
JavaScript
63 lines
1.1 KiB
JavaScript
const Sequelize = require('sequelize');
|
|
|
|
const seqConn = new Sequelize({
|
|
dialect: 'sqlite',
|
|
storage: `ndm.db`,
|
|
pool: {
|
|
max: 5,
|
|
min: 0,
|
|
acquire: 30000,
|
|
idle: 10000,
|
|
},
|
|
logging: console.log,
|
|
});
|
|
|
|
// 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,
|
|
allowNull: false
|
|
},
|
|
tld: {
|
|
type: Sequelize.TEXT,
|
|
allowNull: false
|
|
},
|
|
owner: {
|
|
type: Sequelize.BIGINT.UNSIGNED,
|
|
allowNull: false
|
|
},
|
|
}, {
|
|
indexes: [
|
|
{
|
|
unique: true,
|
|
fields: ['domain', 'tld'],
|
|
},
|
|
],
|
|
});
|
|
|
|
////// Exports //////
|
|
module.exports = {
|
|
db: seqConn,
|
|
models: {
|
|
User,
|
|
RegisteredDomain
|
|
}
|
|
} |