25 lines
1.1 KiB
Plaintext
25 lines
1.1 KiB
Plaintext
const dayjs = require("dayjs");
|
|
const Sequelize = require('sequelize');
|
|
<% if(isProjectDb){%>
|
|
const db = require('../db.js');
|
|
<%} else{%>
|
|
const db = require('../../middleware/db');
|
|
<%}%>
|
|
|
|
module.exports = db.define('<%=table_name%>', {
|
|
<% columns.forEach(function(col){ %>
|
|
<%=col.key%>:{
|
|
comment:'<%=col.name%>',
|
|
<%if(col.data_type==="DOUBLE") {%>type: Sequelize.<%=col.data_type%>(<%=col.data_length%>,4),<%}
|
|
else if(col.data_type==='DATE'||col.data_type==='TEXT'||col.data_type==='JSON'){%>type: Sequelize.<%=col.data_type%>(), <%}
|
|
else {%>type: Sequelize.<%=col.data_type%>(<%=col.data_length%>), <%}%>
|
|
allowNull: <%=col.allow_null||false%>,
|
|
<%if(col.data_type==='DATE'){%>defaultValue: Sequelize.literal("CURRENT_TIMESTAMP"),
|
|
get() { return dayjs(this.getDataValue("<%=col.key%>")).format("YYYY-MM-DD HH:mm:ss");}<%}
|
|
else if(col.data_type==='INTEGER'){%>defaultValue: '0'<%}
|
|
else if(col.data_type==='BOOLEAN'){%>defaultValue: '0'<%}
|
|
else{%>defaultValue: '<%=col.default_value%>'
|
|
<%}%>
|
|
},
|
|
<%});%>
|
|
}); |