Git Product home page Git Product logo

Comments (3)

wraithgar avatar wraithgar commented on July 23, 2024

Looking at the source, this appears to happen if it thinks the model is new, i.e. if model[model.idAttribute] (in this case model._id) is falsey.

Can you log out category.isNew() and category.toJSON() in your deleteCategory function?

from ampersand-model.

damionvega avatar damionvega commented on July 23, 2024

Yeah that looks like the case. I was looking for this in the documentation, but it seems it was removed? Here's the link on ampersandjs.com under ampersand-model -> destroy: http://ampersandjs.com/docs#ampersand-model-isnew

Here's the output:

categories.jsx:72 category.isNew()
true
categories.jsx:73 category.toJSON() 
Object {_id: "AU_TyfmweKF7y9ngEHq7", name: "computer", tags: Array[3]}

After adding idAttribute: '_id' to the model, DELETE xhr is made and model removed from collection:

category.isNew()
false
categories.jsx:73 category.toJSON() 
Object {_id: "AU_TyfmweKF7y9ngEHq7", name: "computer", tags: Array[3]}
categories.jsx:77 
category destroyed!

So use idAttribute if you plan on using that model for persistence and mainIndex for collection tracking (if your ID !== id)?

Thanks for your help!

from ampersand-model.

wraithgar avatar wraithgar commented on July 23, 2024

mainIndex is for checking for existing copies of yourself in ampersand-collection and defaults to the idAttribute if I remember correctly

from ampersand-model.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.