向猫鼬注册模型的正确方法

时间:2018-06-23 19:07:04

标签: node.js express mongoose eslint

我正在使用mongooseexpress.js。据我所知,这是在app.js中注册模型的推荐方式(使用import连接到数据库后,mongoose的注册方式):

mongoose.connect('mongodb://mongo:27017/drip')
import './models/MyModel'

此问题是由于eslint应该始终位于文件顶部,导致我的import验证失败:

error  Import in body of module; reorder to top  import/first

当然,将import移动到mongoose.connect中断之前:

MissingSchemaError: Schema hasn't been registered for model "Target".

使用mongoose JavaScript标准时,推荐使用eslint的干净方法是什么?

1 个答案:

答案 0 :(得分:0)

我们在这里想要做的是在模型上注册括号,并在尝试连接前确保在文件顶部需要express和mongoose。这是一个有助于指导您的通用示例:

const express = require('express');
const mongoose = require('mongoose');
const { MyModel } = require('./models/mymodel');

mongoose.Promise = global.Promise;
mongoose.connect((process.env.MONGODB_URI || 'mongodb://localhost:27017/collectionname'));
const port = (process.env.PORT || 5000);