dimanche 17 avril 2016

Ember Data and Firebase Where is my Id

I'm having trouble understanding how to update a record in an Ember.js that uses EmberFire and Firebase.

I have a small test application built to try to understand all of the CRUD functions. I can return a list of tasks that have been created, create a new task, and delete a task. But I cannot correctly update a record in a list.

When I look in the inspector, on my index page, I see that in the Ember debugger, under Data, it shows my model, and there is an Id field that contains the value that Firebase generated when a record was created on the server.

But when I console log the object that is getting passed to my Update Action in the route, there is no Id attribute. I think that is why I get an error of:

Error: no record was found at http://ift.tt/1MBUKOH

When hitting this piece of code:

export default Ember.Route.extend({
    model: function () {
    return this.store.findAll('task');
    },

    actions: { 

    updateTask: function (model) {
      console.log(JSON.parse(JSON.stringify(model)));
      this.store.findRecord('task', 'id').then(function(task){
        task.set( 'taskname', model.taskname);
        task.set( 'startdate', model.startdate);
        task.set( 'enddate',  model.enddate);
        task.set( 'banding',  model.banding);
        return task.save();
      });
    }, 

Ember Fire is supposed to handle the Id isn't it? But if it's not in my model object, how am I supposed to pass it to the find query?




Aucun commentaire:

Enregistrer un commentaire