角度下拉指令不会填充预选数据

时间:2015-09-14 15:01:50

标签: javascript ruby-on-rails json angularjs

我的应用程序是在RoR中构建的,有两种编辑模式:普通模式和高级模式。我正在向AngularJs引导普通视图,用户可以在其中编辑某些字段。在这个视图中,我有一个包含七列的表,这些列中的每一列都接收并向json对象传递数据。这个视图有一个表格,在第一行我用ng-repeat使用Angular的limitTo过滤器填充前七行的数据。

到目前为止,一切正常,双向数据绑定就像魅力一样。问题来自其中一个列:一个整数的下拉列表从1到10,让我们称这个列为“行顺序”。问题在于:尽管模型对于所有其他行都是正确的(因此这些行按预期工作:从高级视图获取数据,或者根据用户接受新值并将数据存储在json对象中)在这个下拉列表的情况下,事情就不会起作用,因为它只显示一个空槽(数字前面的第一个),当我选择一个数字时,我得到422错误。我还需要添加到控制器中还有什么?

正如我所说,其他行遵循相同的系列模型。*一切正常。下面:表格单元格和控制器。

<td ng-controller="rowOrderCtrl" >
   <select class="form-control" ng-model="series.row_order" id="chart_data_series_attributes_{{$index}}_row_order" name="chart[data_series_attributes][{{$index}}][row_order]" ng-change="updateChart()" ng-options="row.value as row.key for row in rowOrder">
   </select>
</td>



'use strict';
angular.module('myApp').controller('rowOrderCtrl', function($scope) {

  $scope.rowOrder = [
    { key: 1, value: 1 },
    { key: 2, value: 2 },
    { key: 3, value: 3 },
    { key: 4, value: 4 },
    { key: 5, value: 5 },
    { key: 6, value: 6 },
    { key: 7, value: 7 },
    { key: 8, value: 8 },
    { key: 9, value: 9 },
    { key: 10, value: 10 }
  ];
});



  def create_chart_data_series(chart)
    ((current_upper)..10).each {|counter|
#      charts.data_series << DataSeries.build(:row_order => counter)
      chart.data_series.build(:row_order => counter)
    }
  end

0 个答案:

没有答案