Skip to content

Instantly share code, notes, and snippets.

var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var assert = require('assert')
console.log('\n===========');
console.log(' mongoose version: %s', mongoose.version);
console.log('========\n\n');
mongoose.connect('localhost', 'testing_allquery');
// v2
var childSchema = new Schema({ name: String })
var parentSchema = new Schema({ children: [childSchema] })
// new in v3 - inline schema declaration
var parentSchema = new Schema({ children: [{ name: String }] })
// v2
new Schema({ name: String, age: Number })
// new in v3
new Schema({ name: 'string', age: 'number' })
> node -v
v0.8.5
// faster cloning means faster updates
> git checkout 2.x
> node benchmarks/clone.js
took 12.738 seconds for 100000 docs (7850.525985241012 dps)
@aheckmann
aheckmann / mongoosenumbersubclass.js
Created August 2, 2012 18:22
mongoose number subclass fail
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var assert = require('assert')
console.log('\n===========');
console.log(' mongoose version: %s', mongoose.version);
console.log('========\n\n');
var schema = new Schema({
n1: Number
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
console.log('\n===========');
console.log(' mongoose version: %s', mongoose.version);
console.log('========\n\n');
mongoose.connect('localhost', 'testing_embeddedVirtuals');
mongoose.connection.on('error', function () {
@aheckmann
aheckmann / prepopulate.js
Created July 27, 2012 21:43
mongoose prepopulate
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var assert = require('assert')
console.log('\n===========');
console.log(' mongoose version: %s', mongoose.version);
console.log('========\n\n');
@aheckmann
aheckmann / query
Created July 13, 2012 18:00 — forked from iamkale/query
Populate in mongoose
var mongoose = require('mongoose');
var Event = mongoose.model('Event');
var Calendar = mongoose.model('Calendar');
function eventController(app) {
app.get('/calendar/:calendarid', function (req, res) {
Calendar
.findOne({ _id:req.params.calendarid })
.populate('events')
var mongoose = require('./../mongoose');
console.error(
'\n==========='
, ' mongoose version: '
, mongoose.version
, '========\n\n'
);
@aheckmann
aheckmann / v3-pt2-query-findoneandupdate.js
Created June 27, 2012 17:21
v3-pt2-query-findoneandupdate
Cat
.where('name', 'Sprinkls')
.findOneAndUpdate({ name: 'Sprinkles' })
.setOptions({ new: false })
.exec(function (err, cat) {
if (err) ..
render('cat', cat);
});