Files
platformV2Web/config/template/model.ejs
张成 8309808835 1
2025-11-21 16:53:49 +08:00

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%>'
<%}%>
},
<%});%>
});