lundi 16 novembre 2015

Ember-data: Saving parent to child via a select box

I've went over a lot of examples both here on SO and in some guides/blogs. Nothing seems to work.

I have a customer that hasMany loads

currently the code is:

route

export default Ember.Route.extend({
  setupController: function(controller, model) {
  controller.setProperties(model);
},
model: function() {
return Ember.RSVP.hash({
    content: this.store.createRecord('truck-load'),
    customerList: this.store.findAll('customer'),
    equipmentList: this.store.findAll('equipment-list')
  });
},
resetController(controller, isExisting) {
  if (isExisting) {
    var model = controller.get('model');
    if (model.get('isNew')) {
      model.destroyRecord();
    }
   }
  }
});

select box in the template - materialize add on for ember-cli

{{md-select content=customerList
 value=model.customer
 label="Customer"
 prompt="Please Choose a Customer..."
 optionLabelPath='content.name'
 optionValuePath='content.id'}}

Current controller - I've tried this many ways

export default Ember.Controller.extend({
   actions: {
     save() {
       var truckload = this.get('model');
       this.get('model.customer').then((customer) => {
         truckload.set('customer', customer);
         truckload.save().then((load) => {
           this.get('notify').success('Truck Load Created');
           this.transitionToRoute('truck-loads.show', load.id);
         });
       });

JSON for my JSON-API server running Elixir/Phoenix

  Parameters: %{"data" => %{"attributes" => %{"pro_number" => "423432", "special" => nil, "status" => nil}, 
  "relationships" => %{"customer" => %{"data" => nil}, 
  "equipment_list" => %{"data" => nil}}} }

customer (and equipment-list) are both coming over nil.




Aucun commentaire:

Enregistrer un commentaire