Filtragem de Múltiplas Colunas ngGrid

Eu estou usando o módulo ngGrid para AngularJS para mostrar alguns dados paginados. Quero poder pesquisar em várias colunas, usando uma pesquisa OR.

Vamos dizer que eu tenho uma coluna com os seguintes títulos: Id, Nome, Descrição. Quando procuro, quero retornar todas as linhas em que o ID OU o nome OU a descrição contenha o termo de pesquisa.

    $scope.pagingOptions = {
        pageSizes: [20, 50, 100],
        pageSize: 20,
        totalServerItems: 0,
        currentPage: 1
    };

    $scope.gridOptions =
        {
            data: 'myData',
            columnDefs: [
                { field: 'id', displayName: 'Id' },
                { field: 'name', displayName: 'Name' },
                { field: 'description', displayName: 'Description' },
                { displayName: 'Actions', cellTemplate: '<input type="button" data-ng-click="doSomething(row.entity)" value="Do Something" />'}],
            enablePaging: true,
            showFooter: true,
            showFilter: true,
            pagingOptions: $scope.pagingOptions,
            filterOptions: {
                filterText: "",
                useExternalFilter: false
            }
        };

Eu tentei usar a caixa de pesquisa padrão e também usando uma caixa de entrada externa vinculada a $ scope.filterText para definir um filtro personalizado, como:

$scope.filterUpdated = function () {
    $scope.gridOptions.filterOptions.filterText = 'id:' + $scope.filterText + ';name:' + $scope.filterText + ';description:' + $scope.filterText;
};

No entanto, isso parece fazer um E em todas as colunas. É possível conseguir o que eu quero usando o módulo ngGrid?

Desde já, obrigado,

Chris

questionAnswers(1)

yourAnswerToTheQuestion