ngRepeat não atualiza após a alteração do modelo

Estou tentando codificar uma pequena entrada de pesquisa para obter dados de um banco de dados usando o ngResource.

os dados são mostrados na página com uma repetição ng, mas quando faço a pesquisa e o escopo $ foi atualizado, a exibição não é atualizada e mostra dados antigos.

Aqui está o código:

main.html (vista ativa)

<div ng-controller="searchCtrl as searchCtrl" layout="column">
    <form class="form-inline search-form col-md-offset-1">
        <div class="form-group col-md-5">
            <label class="sr-only" for="search_location">Location</label> <input
                id="search_location" type="search" class="form-control"
                ng-Autocomplete ng-model="place" placeholder="Location" />
        </div>
        <div class="form-group col-md-5">
            <label class="sr-only" for="search_tags">Tags</label> <input
                style="width: 100%;" id="search_tags" type="search"
                class="form-control" id="search_tags" placeholder="Tags">
        </div>

        <div class="col-md-1">
            <md-button class="md-fab md-mini" aria-label="Search" ng-click="searchCtrl.search()"> <md-icon class="md-fab-center"
                md-font-icon="glyphicon glyphicon-search" style="color: black;"></md-icon>
            </md-button>
        </div>
    </form>
</div>

<div ng-controller="mainCtrl">

    <div ng-repeat="evento in eventi" ng-include="'views/components/event_card.html'" class="col-md-3"></div>

</div>

main.js

'use strict';
app.factory('Eventi', function($resource) {
    return $resource('/eventsws/events/:location', {location : '@location'}, { 
        search: {
            method: 'GET',
            params: {
                'location' : "@location"
            },
            isArray : true
        }
    })
});

app.controller('mainCtrl', function($scope, Eventi) {
    $scope.eventi = Eventi.query();
});

searchbar.js

'use strict';
app.controller('searchCtrl', function($scope, Eventi) {
    $scope.place = null;

    this.search = function() {

        $scope.eventi = Eventi.search({
            'location' : $scope.place
        });
    }
});

Quando ele inicia, obtém todos os dados do banco de dados e os exibe corretamente. Quando tento fazer uma pesquisa, o $ scope.eventi é atualizado (eu posso ver os novos dados em $ scope.eventi na depuração), mas a visualização ainda mostra os dados antigos e nunca atualiza.

Eu tentei usar $ scope. $ Apply no final da função de pesquisa, mas o resultado é o mesmo.

Você tem alguma idéia de por que não está funcionando?

Obrigado pelo seu tempo.

questionAnswers(2)

yourAnswerToTheQuestion