node-ember-rest
Tight integration between mongoose models and routes.
Last updated 6 years ago by shockwork .
Original npm · Tarball · package.json
$ cnpm install node-ember-rest 
SYNC missed versions from official npm registry.

express-rest-ember

Automatically create REST endpoints based on your mongoose models. This is by no means limited to ember. The ember in the name means that it's compatible with Embers rest adapter out of the box.

var express = require('express');
var app = express();
var mongoose = require('mongoose');

mongoose.connect(...)

var rest = require('express-rest-ember');

rest.setup({mongoose: mongoose, resources: '/path/to/models' });

//
// Register all REST-ful routes
//
app.use('/api/myResource', rest.routes.myResource); // Your resource will now be avilable at http://host/api/myResource

//
// If you want to protect resources you can ofcourse do it using middleware
// (like passport)
//
app.use('/api/myProtectedResource', myAuthMiddleware, rest.routesmyProtectedResource);

app.listen(3000);

Look in the example folder for a full working example.

Models

All your models should be stored in the same directory (e.g. resources/).

A Model

module.exports = function (mongoose) {

    var PostSchema = new mongoose.Schema({
        title: { type: String, required: true },
        body: { type: String }
    });

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

    //
    // For express-rest-ember to work you MUST
    // return an object containing model and Schema
    // properties...
    //
    return {
        model: model,
        Schema: PostSchema
    };
}

Notice that you must export it as a function where mongoose will be injected as the first argument.

Testing

Run the tests for a better understanding of how the routes work, as the output will give you a good hint.

Install mocha globally

$ npm install mocha -g

Run the tests

$ npm test

Current Tags

  • 0.0.1                                ...           latest (6 years ago)

1 Versions

  • 0.0.1                                ...           6 years ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (6)
Dev Dependencies (5)
Dependents (0)
None

Copyright 2014 - 2016 © taobao.org |