【发布时间】:2018-09-26 15:08:15
【问题描述】:
我在使用主键作为 uuid 的 Sequalize 中遇到了实现模型的问题。我一步一步地按照所有说明进行操作,但仍然无法解决。
这是我的模型的样子:
'use strict';
module.exports = (sequelize, DataTypes) => {
var Todo = sequelize.define('Todo', {
title: DataTypes.STRING,
description: DataTypes.STRING,
test: DataTypes.UUID
}, {});
Todo.associate = function(models) {
// associations can be defined here
};
return Todo;
};
以及迁移文件:
'use strict';
module.exports = {
up: (queryInterface, Sequelize) => {
return queryInterface.createTable('Todos', {
id: {
primaryKey: true,
type: Sequelize.UUID,
defaultValue: Sequelize.UUIDV1
},
title: {
type: Sequelize.STRING
},
description: {
type: Sequelize.STRING
},
test: {
type: Sequelize.UUID,
defaultValue: Sequelize.UUIDV4
},
createdAt: {
allowNull: false,
type: Sequelize.DATE
},
updatedAt: {
allowNull: false,
type: Sequelize.DATE
}
});
},
down: (queryInterface, Sequelize) => {
return queryInterface.dropTable('Todos');
}
};
调用 post 方法创建元素后,我在 ID 列中得到了一个空值,在 test 列中得到了 NULL...
数据库是 MySql。
还有其他方法吗?
【问题讨论】:
标签: mysql node.js express sequelize.js uuid