0.3.0 • Published 8 years ago

bookshelf-manager v0.3.0

Weekly downloads
11
License
MIT
Repository
github
Last release
8 years ago

Bookshelf Manager

Build Status Dependencies devDependencies

Model & Collection manager for Bookshelf.js to make it easy to create & save deep, nested JSON structures from API requests.

Installation

npm install bookshelf-manager --save

Usage

  1. Register as a plugin in Bookshelf:

    bookshelf.plugin('bookshelf-manager');
    • Optionally, you can pass in an object with a root property to read models from a specified directory:

      bookshelf.plugin('bookshelf-manager', { root: 'path/to/models' });
  2. Register individual models (not required if you passed in a root model directory as above):

    bookshelf.manager.register(model, modelName);
  3. Use the methods on bookshelf.manager to create, fetch, and save models or collections with support for deeply-nested attributes. E.g.:

    return bookshelf.manager.create('car', {
      features: [
        { name: 'ABS', cost: '1250' },
        { name: 'GPS', cost: '500' }
      ],
      quantity: 1
    }).then(function(car) {
      // created car should now have the associated features
    });

API

In progress...

Changelog

  • v0.3.0 - Add setHasOne functionality (#12)
  • v0.2.1 - Several breaking changes occurred with this version due to updating devDependencies and peerDependencies:
    • Knex and Bookshelf updated their bluebird and lodash dependencies
    • Knex changed how undefined values are inserted
  • v0.1.0 - Reimplement as a plugin for Bookshelf/Knex 0.8.x
  • v0.0.10 - Enforce belongsToMany IDs
  • v0.0.9 - Destroy removed hasMany models
  • v0.0.8 - Fetch empty collections
  • v0.0.7 - Attempt to use existing, eager-loaded models rather than re-fetch
  • v0.0.6 - Ignore _pivot_ keys
  • v0.0.5 - Improve error handling for unintialized instances & missing files
  • v0.0.4 - Improve .attach and .detach
  • v0.0.3 - Add support for lazy-managed models.
  • v0.0.2 - If instanceof Bookshelf is not provided, instance from Bookshelf.initialize is used.
  • v0.0.1 - Initial Release.

License

Copyright (c) 2013 Eric Clemmons Licensed under the MIT license.

0.3.0

8 years ago

0.2.1

8 years ago

0.2.0

8 years ago

0.1.0

8 years ago

0.0.10

10 years ago

0.0.9

10 years ago

0.0.8

10 years ago

0.0.7

10 years ago

0.0.6

10 years ago

0.0.5

10 years ago

0.0.4

10 years ago

0.0.3

10 years ago

0.0.2

10 years ago

0.0.1

10 years ago