0
我的一個ng-table列包含一個選擇性下拉列表。此列的值是另一個表的外鍵。我不想顯示這個鍵,而是希望顯示這個鍵代表的行的另一個屬性(名稱)。 我的數據位於一個名爲table的數組中。自定義過濾/使用ng-table和selectize進行排序
我的下拉菜單正確顯示使用另一個數組,fkTable。
<selectize ng-model="row[col.name]"
options='fkTable'
config='fkConfig'">
其中fkConfig:
$scope.fkConfig = {
maxItems: 1,
valueField: 'id',
labelField: 'name',
searchField: 'name'
};
現在我希望能夠基於國外行名稱,而不是ID過濾和秩序此列。
我試圖去了解這個映射的ID,以他們的名字:
$scope.foreignRowNames = {
0:"not grouped"
1:"Google"
14:"Youtube"
}
,並通過這個特定的列創建自定義過濾器:
function filterSelectizeColumn(table, searchTerm) {
for (var i = 0; i < table.length; i++) {
var fkValue = table[i].fk;
var foreignRowName = $scope.foreignRowNames[fkValue]];
if (foreignRowName.indexOf(searchTerm) == -1) {
table = table.splice(i, 1);
}
}
}
但是,這似乎是一個尷尬的和低效的方式由於這兩個圖書館的普及,我會認爲這是一個比較常見的問題。
我的問題是如何有效地創建這個外鍵列的自定義過濾器。