Skip to content

vidigami/backbone-rest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

logo

By using BackboneREST on the server and BackboneORM's JSON rendering DSL, you can save time in defining JSON APIs.

Supported frameworks:

Examples (CoffeeScript)

Backbone = require 'backbone'
RestController = require 'backbone-rest'
ensureLoggedIn = require 'connect-ensure-login'

customAuthorization = (req, res, next) ->
  unless req.user.canAccessTask(req)
    return res.status(401).send('you cannot access this task')
  next()

new RestController(app, {
  auth: [ensureLoggedIn('/login'), customAuthorization]
  model_type: Task
  route: '/tasks'
})

Examples (JavaScript)

var Backbone = require('backbone');
var RestController = require('backbone-rest');
var ensureLoggedIn = require('connect-ensure-login');

var customAuthorization = function(req, res, next) {
  if (!req.user.canAccessTask(req)) {
    return res.status(401).send('you cannot access this task');
  }
  return next();
};

new RestController(app, {
  auth: [ensureLoggedIn('/login'), customAuthorization],
  model_type: Task,
  route: '/tasks'
});

Please checkout the website for installation instructions, examples, documentation, and community!

For Contributors

To build the library for Node.js:

$ gulp build

Please run tests before submitting a pull request:

$ gulp test --quick

and eventually all tests:

$ npm test

Test Variants

You can run the following fine-grained tests to resolve problems with specific application frameworks

$ gulp test-express3
$ gulp test-express4
$ gulp test-restify