【问题标题】:NodeJs - Sequelize - Unrecognized datatype for attributeNodeJs - Sequelize - 属性的无法识别的数据类型
【发布时间】:2020-05-05 11:54:21
【问题描述】:

我正在尝试为我的 dcauser 表制作模型。我被卡住了,因为它返回错误“属性无法识别的数据类型”。现在我不知道我是否在数据库中搞砸了,或者我的数据库无法正常工作,或者我是否在下面的代码中搞砸了。我遵循了一些指南,但我总是遇到上面提到的同一个问题。

var Sequelize = require('sequelize');
var sequelize = new Sequelize('postgres://postgres:xpwdx@localhost:xportx/xdbx');


const UserSchema = sequelize.define(
    'dcauser',
    {
        userid: {
            type: Sequelize.Integer,
            allowNull: false,
        }
    }
);


module.exports = UserSchema;

我收到以下错误:

C:\Users\luka\source\repos\dcaBotManager\node_modules\sequelize\lib\model.js:1005
        throw new Error(`Unrecognized datatype for attribute "${this.name}.${name}"`);
        ^

Error: Unrecognized datatype for attribute "dcauser.userid"
    at C:\Users\luka\source\repos\dcaBotManager\node_modules\sequelize\lib\model.js:1005:15
    at C:\Users\luka\source\repos\dcaBotManager\node_modules\lodash\lodash.js:13401:38
    at C:\Users\luka\source\repos\dcaBotManager\node_modules\lodash\lodash.js:4905:15
    at baseForOwn (C:\Users\luka\source\repos\dcaBotManager\node_modules\lodash\lodash.js:2990:24)
    at Function.mapValues (C:\Users\luka\source\repos\dcaBotManager\node_modules\lodash\lodash.js:13400:7)
    at Function.init (C:\Users\luka\source\repos\dcaBotManager\node_modules\sequelize\lib\model.js:1001:28)
    at Sequelize.define (C:\Users\luka\source\repos\dcaBotManager\node_modules\sequelize\lib\sequelize.js:428:11)
    at Object.<anonymous> (C:\Users\luka\source\repos\dcaBotManager\src\models\user.model.js:14:30)
    at Module._compile (internal/modules/cjs/loader.js:1156:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1176:10)
    at Module.load (internal/modules/cjs/loader.js:1000:32)
    at Function.Module._load (internal/modules/cjs/loader.js:899:14)
    at Module.require (internal/modules/cjs/loader.js:1042:19)
    at require (internal/modules/cjs/helpers.js:77:18)
    at Object.<anonymous> (C:\Users\luka\source\repos\dcaBotManager\src\models\index.js:2:23)
    at Module._compile (internal/modules/cjs/loader.js:1156:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1176:10)
    at Module.load (internal/modules/cjs/loader.js:1000:32)
    at Function.Module._load (internal/modules/cjs/loader.js:899:14)
    at Module.require (internal/modules/cjs/loader.js:1042:19)
    at require (internal/modules/cjs/helpers.js:77:18)
    at Object.<anonymous> (C:\Users\luka\source\repos\dcaBotManager\src\config\passport.js:3:18)
    at Module._compile (internal/modules/cjs/loader.js:1156:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1176:10)
    at Module.load (internal/modules/cjs/loader.js:1000:32)
    at Function.Module._load (internal/modules/cjs/loader.js:899:14)
    at Module.require (internal/modules/cjs/loader.js:1042:19)
    at require (internal/modules/cjs/helpers.js:77:18)

【问题讨论】:

    标签: node.js postgresql sequelize.js


    【解决方案1】:

    integer 关键字必须大写

    {
        userid: {
            type: Sequelize.INTEGER,
            allowNull: false,
        }
    }
    

    【讨论】:

    • 谢谢。这解决了我的问题!:)
    【解决方案2】:

    【讨论】:

    • 谢谢。它解决了我的问题:)。
    猜你喜欢
    • 2016-01-13
    • 1970-01-01
    • 2020-05-14
    • 1970-01-01
    • 2023-03-10
    • 2020-07-16
    • 1970-01-01
    • 1970-01-01
    • 2013-07-17
    相关资源
    最近更新 更多