鍍金池/ 問答/數(shù)據(jù)庫  HTML/ Sequelize 如何動態(tài)設(shè)置 defaultValue?

Sequelize 如何動態(tài)設(shè)置 defaultValue?

在用 Sequelize 設(shè)置 defaultValue 時,不想用自帶的 UUID,想自己維護(hù)這個 id,但是運(yùn)行起程序后,通過 function 得到的 id 將不會再被動態(tài)改變,這個如何實(shí)現(xiàn)呢?

這是自帶的 UUID:

module.exports = function ( sequelize, DataTypes ){
    return {
        id: {
            type: DataTypes.STRING,
            unique: true,
            primaryKey: true,
            defaultValue: DataTypes.UUIDV4  // 這里想自己維護(hù)動態(tài) id
        },
        json_str: {
            type: DataTypes.TEXT,
            defaultValue: '{}'
        }
    };
};

想要改成動態(tài)獲取id,類似這樣,但是目前在運(yùn)行程序時,就已經(jīng)確定了一個:

let id = 0;
function getId() {
    id++;
    return id;
}

module.exports = function ( sequelize, DataTypes ){
    return {
        id: {
            type: DataTypes.STRING,
            unique: true,
            primaryKey: true,
            defaultValue: getId()
        },
        json_str: {
            type: DataTypes.TEXT,
            defaultValue: '{}'
        }
    };
};
回答
編輯回答
命多硬

設(shè)置不了吧,你的數(shù)據(jù)庫同表同字段能設(shè)置不同的默認(rèn)值?

2018年5月6日 11:24