1.2.3 • Published 7 years ago

ember-rollback-relationships v1.2.3

Weekly downloads
55
License
MIT
Repository
github
Last release
7 years ago

ember-rollback-relationships

ember install ember-rollback-relationships

Adds behaviour to DS.Model so belongsTo and hasMany relationships can also be rolled back.

Notes

Don't forget to call model.rollbackAttributes() yourself if required.

Calling this._super(); is mandatory if you are using any of the following Events:

  • ready
  • didCreate
  • didLoad
  • didUpdate

Many-to-many relationships are not supported!

API

rollbackRelationships(kind)

Performs a rollback on the current model for every relationship that meets the given criteria.

kind String belongsTo and hasMany

// app/models/blog.js
export default DS.Model.extend({
  user: DS.belongsTo()
});

// app/models/post.js
export default DS.Model.extend({
  user: DS.belongsTo()
});

// app/models/user.js
export default DS.Model.extend({
  blogs: DS.hasMany(),
  posts: DS.hasMany()
});

// Rollback blogs and posts (all relationships)
user.rollbackRelationships();

// Rollback user (all belongsTo relationships)
blog.rollbackRelationships('belongsTo');

// Rollback blogs and posts (all hasMany relationships)
user.rollbackRelationships('hasMany');

rollbackRelationship(name)

Performs a rollback on the current model for the given relationship only.

name String of the relationship

// app/models/blog.js
export default DS.Model.extend({
  user: DS.belongsTo()
});

// app/models/post.js
export default DS.Model.extend({
  user: DS.belongsTo()
});

// app/models/user.js
export default DS.Model.extend({
  blogs: DS.hasMany(),
  posts: DS.hasMany()
});

// Rollback user only
blog.rollbackRelationship('user');

// Rollback blogs only
user.rollbackRelationship('blogs');
1.2.3

7 years ago

1.2.2

7 years ago

1.2.1

7 years ago

1.2.0

7 years ago

1.0.10

8 years ago

1.0.9

8 years ago

1.0.8

8 years ago

1.0.7

8 years ago

1.0.6

8 years ago

1.0.5

8 years ago

1.0.4

8 years ago

1.0.3

8 years ago

1.0.2

9 years ago

1.0.1

9 years ago

1.0.0

9 years ago

0.0.0

9 years ago