首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带猫鼬的ActionHero js

带猫鼬的ActionHero js
EN

Stack Overflow用户
提问于 2014-06-29 13:40:19
回答 1查看 1.2K关注 0票数 1

我正在使用ActionHero js和Mongoose创建一些rest。我把“猫鼬”代码放在一个增强器中,一切都正常。当我修改一些文件时,项目会自动重新编译,并返回以下错误: OverwriteModelError:

编译后无法覆盖User模型。

如何编辑代码以避免此错误?“严格使用”;

代码语言:javascript
复制
var mongoose   = require('mongoose');


exports.mongo = function(api, next) {

    mongoose.connect(api.config.mongo.host);

    var db = mongoose.connection;
    db.on('error', console.error.bind(console, 'connection error:'));
    db.once('open', function callback () {
        console.log('Connection opened');
    });

    var Schema = mongoose.Schema,
        Types = mongoose.Schema.Types;

    var userSchema = mongoose.Schema({
        createdAt: { type: Date, default: Date.now(), required: true},
        updatedAt: { type: Date, required: false},
        email: { type: String, required: true },
        name: { type: String, required: true },
        surname: { type: String, required: true },
        password: { type: String, required: true },
        roles: [],
        tokens: [{
            code: String,
            expiryDate: { type: Date, default: Date.now() + 30 }
        }]
    });


    var User = mongoose.model('User', userSchema);

    var postSchema = mongoose.Schema({
        createdAt: { type: Date, default: Date.now(), required: true},
        updatedAt: { type: Date, required: false},
        content: { type: String, required: true },
        votes: { type: [Types.ObjectId], ref: 'User' } ,
        coordinates: { type: [Number], index: { type: '2dsphere' }, required: true },
        creator: { type: Schema.Types.ObjectId, ref: 'User', required: true }
    });


    var Post = mongoose.model('Post', postSchema);

    api.mongo = {
        mongoose: mongoose,
        user: User,
        post: Post
    };

    next();
};
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-30 08:11:40

如果您在developmentMode中,动作英雄将重新加载任何初始化器。您应该将连接步骤包装在_start()块中,而不是每次都让它们在线运行。这样,action英雄就可以重新加载文件,而不是重新运行连接步骤。

http://actionherojs.com/docs/core/initializers.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24476583

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档