我一直在尝试使用angular.js来处理可排序和可搜索的数据列表。
使用此RailsCast开始http://railscasts.com/episodes/405-angularjs
然后通过这里的过滤器示例http://docs.angularjs.org/api/ng.filter:filter
当我在分钟排序和过滤时运行时,我感到非常震惊。因此,我似乎有一种理想的方法来呈现表格数据,这些数据可以通过在每列中进行过滤来进行排序和搜索......
直到我意识到过滤器似乎不适用于使用'。'解决的json嵌套attrbutes。符号,例如我的客户都有一个所有者,我想显示他们的电子邮件地址,并按此字段进行排序和筛选 - 我的代码的关键部分看起来像这样。
<tbody ng-repeat="client in clients | orderBy:sort_by:reverse | filter:search">
<tr>
<td>{{name}}</td>
<td>{{owner.email}}</td>
<tr>
<input ng-model="search.name">
<input ng-model="search.owner.email">
owner.email已呈现并可进行排序,但不会过滤。我有一个解决方法:只允许每个属性:包括关联和搜索关联,例如search.owner过滤了所有者的电子邮件,因为这是我允许进入json的全部内容。这感觉就像一个黑客。必须有适当优雅的方式来做到这一点。它是什么?