Схемы во внешнем модуле не работают в Node.js

У меня огромная головная боль, когда я пытаюсь поделиться некоторыми общими определениями схемы через модуль со всеми другими модулями в моей базе кода.

У меня есть модуль myproj_schemas, который содержит эти две схемы:

var mongoose = require('mongoose'),
    util = require("util"),
    Schema = mongoose.Schema;

var BaseProfileSchema = function() {
    Schema.apply(this, arguments);

    this.add({
        _user: {type: Schema.Types.ObjectId, ref: 'User', required: true},
        name: {type: String, required: true},
        bio: {type: String, required: true},
        pictureLink: String
    });

};
util.inherits(BaseProfileSchema, Schema);

module.exports = BaseProfileSchema;

А также

var mongoose = require('mongoose'),
    BaseProfileSchema = require('./base_profile_schema.js'),
    Schema = mongoose.Schema;

var entSchemaAdditions = {
    mentors: {type: Schema.Types.ObjectId, ref: 'Mentor'}
};


var entrepreneurSchema = new BaseProfileSchema(entSchemaAdditions);

module.exports = entrepreneurSchema;

Менторы также определены в другом файле.

Мои модульные тесты для них обоих работают в модуле схемы.

Когда я npm установить этот модуль и попытаться создать с помощью

Entrepreneur = db.model('Entrepreneur', entrepreneurSchema),

Я получаю следующую ошибку:

Ошибка типа: неопределенный тип вpaths.mentors Вы пробовали вкладывать схемы? Вы можете вкладывать только с помощью ссылок или массивов.

Если я использую тот же код в моем локальном модуле, то нет проблем. Если я ссылаюсь на файл схемы непосредственно в require (например, require ('../ node_modules / myproj_schemas / models / ent_schema'), то я получаю ошибку.

Я почти уверен, что раньше это не сломалось, но я отказался от всех изменений и все еще не работает.

Я рисую полный бланк, и любые предложения будут с благодарностью приняты.

РЕДАКТИРОВАТЬ:

Я создал новый модуль Schemas. Есть одна схема:

var mongoose = require('mongoose');

var userSchema = new mongoose.Schema({
    email: String
});

module.exports = userSchema;

Это также дает сбой при упаковке в модуль и установке npm в другие модули.

Работает на OS X

Ответы на вопрос(3)

Ваш ответ на вопрос