[英]Sequelize create not a function?
我正在尝试使用model.create,它说model.create不是一个函数。 我四处搜寻,似乎找不到任何rmesolutions。 请注意,我正在通过babel在节点中使用es6导入/导出。
model.js
'use strict';
export default (sequelize, DataTypes) => {
let attachments = sequelize.define('attachments', {
type: DataTypes.STRING,
category: DataTypes.STRING,
value: DataTypes.STRING,
}, {});
attachments.associate = (models) => {
};
return attachments;
};
控制者
import attachments from '../../../models/attachments'
import to_attachments from '../../../models/to_attachments'
import AWSService from '../../utils/awsS3Api'
export async function createPhoto(ctx) {
...
try {
let attachment = await attachments.create({
type: 'image',
category: imageCategory,
value: data.location
});
..etc
我究竟做错了什么?
如果通过函数声明模型:
export default (sequelize, DataTypes) => {
...
};
然后您应该使用sequelize.import
导入它
const Attachment = sequelize.import('../../../models/attachments')
export async function createPhoto(ctx) {
const attachment = await Attachment.create({
type: 'image',
category: imageCategory,
value: data.location
});
}
PS一些建议
1)用处理静态类的大写字母命名模型变量。
const user = await User.findById(123)
const users = await User.findAll({where: {id: [1,2,3]}})
2)单数不是Users
而是User
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.