0
내 ng 테이블 열 중 하나에 선택 드롭 다운이 있습니다. 이 열의 값은 다른 테이블의 외래 키입니다. 이 키를 표시하는 대신이 키가 나타내는 행의 다른 속성 (이름)을 표시하고자합니다. 내 데이터가 table이라는 배열에 있습니다.ng-table을 사용하여 맞춤 필터링/주문하기
다른 배열 fkTable을 사용하여 올바르게 표시되는 드롭 다운 목록이 있습니다.
$scope.fkConfig = {
maxItems: 1,
valueField: 'id',
labelField: 'name',
searchField: 'name'
};
가 지금은 외국 행 이름이 아닌 ID를 기반으로이 열을 필터링 및 주문 할 수 있도록하려면 : fkConfig이
<selectize ng-model="row[col.name]"
options='fkTable'
config='fkConfig'">
.
$scope.foreignRowNames = {
0:"not grouped"
1:"Google"
14:"Youtube"
}
이 특정 컬럼에 대한 사용자 정의 필터를 만들어 :
나는 그들의 이름이 매핑에 대한 ID를 가려고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);
}
}
}
그러나 이것은 어색하고 비효율적 인 방법을 보인다 뭔가에 대해 생각해 보면 두 도서관의 인기로 인해 다소 일반적인 문제로 여겨졌을 것입니다.
제 질문은 어떻게 효율적으로이 외래 키 열에 대한 사용자 지정 필터를 만들 수 있습니다.