包括意外。元素必须是模型,关联或对象 [英] Include unexpected. Element has to be either a Model, an Association or an object

查看:480
本文介绍了包括意外。元素必须是模型,关联或对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在尝试使用nodeJs配置postrgres时遇到问题,我遵循了教程,但我得到一个错误,未指明任何错误:

I have a problem trying to configure postrgres with nodeJs, i followed this tutorial and i get a error that doesn't specify anything about what is wrong:

这是 stacktrace

Unhandled rejection Error: Include unexpected. Element has to be either a Model, an Association or an object.
    at C:\Users\FilipeCosta\desktop\FloraApp\server\node_modules\sequelize\lib\model.js:1976:15
    at Array.map (native)
    at conformOptions (C:\Users\FilipeCosta\desktop\FloraApp\server\node_modules\sequelize\lib\model.js:1941:39)
    at Model.<anonymous> (C:\Users\FilipeCosta\desktop\FloraApp\server\node_modules\sequelize\lib\model.js:700:7)
    at Model.tryCatcher (C:\Users\FilipeCosta\desktop\FloraApp\server\node_modules\sequelize\node_modules\bluebird\js\main\util.js:26:23)
    at Promise._settlePromiseFromHandler (C:\Users\FilipeCosta\desktop\FloraApp\server\node_modules\sequelize\node_modules\bluebird\js\main\promise.js:503:31)
    at Promise._settlePromiseAt (C:\Users\FilipeCosta\desktop\FloraApp\server\node_modules\sequelize\node_modules\bluebird\js\main\promise.js:577:18)
    at Promise._settlePromiseAtPostResolution (C:\Users\FilipeCosta\desktop\FloraApp\server\node_modules\sequelize\node_modules\bluebird\js\main\promise.js:244:10)
    at Async._drainQueue (C:\Users\FilipeCosta\desktop\FloraApp\server\node_modules\sequelize\node_modules\bluebird\js\main\async.js:128:12)
    at Async._drainQueues (C:\Users\FilipeCosta\desktop\FloraApp\server\node_modules\sequelize\node_modules\bluebird\js\main\async.js:133:10)
    at Immediate.Async.drainQueues (C:\Users\FilipeCosta\desktop\FloraApp\server\node_modules\sequelize\node_modules\bluebird\js\main\async.js:15:14)
    at runCallback (timers.js:672:20)
    at tryOnImmediate (timers.js:645:5)
    at processImmediate [as _immediateCallback] (timers.js:617:5)

我的模型:

var express = require('express');
var models = require('../models');
var router = express.Router();

/* GET users listing. */
router.get('/', function (req, res, next) {
  var User = models.User;
  User.findById(1).then(function (user) {
    console.log(user);
  })
});

module.exports = router;

我的路由器:

严格使用;

module.exports = function(sequelize, DataTypes) {
  var User = sequelize.define("User", {
    username: DataTypes.STRING,
    id: DataTypes.INTEGER,
    email: DataTypes.STRING
  });

  return User;
};


推荐答案

可能是您的深度有问题您的模型路径,请首先检查该路径是否正确。另外,您可以按照建议的此处来管理您的需求导入,这将非常方便且有用。

Is posible that you have a problem with the depth of your model path, check first if that is the correct path. Alternatively, you can manage your require imports as suggested here, it will result really handy and useful.

这篇关于包括意外。元素必须是模型,关联或对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆