my issue is i'm tired of writing:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var mongooseTypes = require("mongoose-types");
mongooseTypes.loadTypes(mongoose, 'url');
var Url = mongoose.SchemaTypes.Url;
var mongooseTypes = require("mongoose-types");
....
in every single schema file. is there a way of having a module that you require set mongoose, Schema, and mongooseTypes variables in that file?
i could do: var mongooseTypes = require(mongoose-global-stuff.js).mongooseTypes; but, then i'm defining each variable one at a time and i'm not gaining anything here.
i've only found this an issue with mongoose because of how things are defined.
You could have a separate module (say, 'moongoose-wrapper') like this:
var mongoose = require('mongoose');
var mongooseTypes = require("mongoose-types");
mongooseTypes.loadTypes(mongoose, 'url');
module.exports.mongoose = mongoose;
module.exports.Schema = mongoose.Schema;
module.exports.mongooseTypes = require('mongoose-types');
module.exports.Url = mongoose.SchemaTypes.Url;
And then use it like so:
var mongoose = require('./path/to/mongoose-wrapper');
mongoose.mongooseTypes.doSomethingWithMongooseTypes();
mongoose.Url.doSomethingWithUrl();
...