title: knockout mapping - how to remove an object from the array it belongs to?
body: <p>I have the following code: </p>
  
  <pre><code>// viewModel
  var cardViewModel = function (data) {
      var self = this;
      ko.mapping.fromJS(data, {}, self);
      self.isNew = ko.observable(false);
      // etc
  }
  // mapping
  var mapping = {
      create: function (options) {
          var innerModel = ko.mapping.fromJS(options.data, {
              'cards': {
                  create: function (options) {
                      //debugger;
                      return new cardViewModel(options.data);
                  }
              } // etc
          });
  // data
  var setData = dataservice.getSet();
  var observableData = ko.mapping.fromJS(setData, mapping);
  </code></pre>
  
  <p>Within my viewModel, I'd like to add something like this:</p>
  
  <pre><code>self.save = function() {
      var card = new cardViewModel(dataservice.save(this)) // works fine
      innerModel.cards.push(card) // doesn't work because I don't have access to innerModel from the card viewModel
  }
  </code></pre>
  
  <p>Right now I'm just triggering events from the viewModels and listening to them from the innerModel, but this is getting a little messy and want to see if there's any way to access innerModel.sets() from the setViewModel.  </p>