Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Helio13

AngularJS - Filtro

Mensagens Recomendadas

Helio13

Boas!

Na minha aplicação, queria por a opção de selecionar os filmes por genero.

Selecciono o genero acção e será mostrado a lista dos filmes de accção...o que eu quero fazer é algo como isto:


<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" ng-app="angularjs-starter">

 <head>
<title></title>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.0.3/angular.min.js"></script>
<link href="style.css" rel="stylesheet" />
<script src="app.js"></script>
 </head>

 <body ng-controller="MainCtrl">
<select ng-model="selectedCategory" ng-options="c.name for c in categories">
  <option value="">-- Select a Category --</option>
</select>

<h2>Found Movies</h2>
<div ng-repeat="movie in movies|filter:filterByCategory">
  <span>{{movie.name}}</span> - <span>{{movie.category}}</span>
</div>
 </body>

</html>

Só que ai os dados estão locais e os meus não, tenho que fazer um get...

Só que não estou a conseguir fazer isso:

O código que estou a tentar para fazer é este:

<!doctype html>
<html ng-app="Django">
<head>
 <script src="http://code.angularjs.org/1.0.5/angular.js%22></script>
 <script src="http://code.angularjs.org/1.0.5/angular-resource.js%22></script>
 <script src="http://code.angularjs.org/1.0.5/angular-resource.min.js%22></script>
 <script src="http://code.angularjs.org/1.0.5/angular.min.js%22></script>
 <script src="./Django.js"></script>
</head>
<body>

<div ng-controller="DjangoCtrl">

<select ng-model="selectedCategory" ng-options="c.name for c in categories">
  <option value="">-- Select a Category --</option>
</select>

<h2>Found Movies</h2>
<div ng-repeat="movie in movies.objects|filter:filterByCategory">
  <span>{{movie.MovieTitle}}</span> - <span>{{movie.MovieGenre}}</span>
</div>


</div>

</body>
</html>

Alguém me pode ajudar a perceber o que estou a fazer mal?

Cumprimentos

Editado por Rui Carlos
Copiado código para a mensagem.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
fivelas

Boas,

já fiz algo do género e talvez o problema seja por não teres colocado em parêntesis o dataset.

Ou seja, eu tenho assim e funciona:

ng-repeat="p in (players | orderBy:'nickname':false | filter:search) "

também não estou a ver o teu app.js mas tenta colocar os parêntesis.

No meu caso o search é uma textbox.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
11111000000

http://plnkr.co/edit/B0LDE0

Oi! Você quis fazer uma pergunta errada? :)

Eu fiz plunkr com sua tarefa. Sintonizado desempenho do filtro e veio com um roteiro adequado. Liguei $http, talvez isso é o que você precisa para 'get', se eu entendi a pergunta pelo Português. Talvez isto ajude. Mas se não - fork meu plankr e especificar as tarefas.

Peço desculpas pelo Português - é auto-tradutor, eu fui estudar esta língua))

Editado por 11111000000

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.