J'essaie actuellement de filtrer des données à partir d'une base de données Firebase en utilisant des données de braises. Je souhaite que les données soient filtrées lorsque l'utilisateur saisit le champ de recherche en fonction du nom de l'attribut de données.Ember Firebase de filtrage de données
C'est actuellement le modèle:
import DS from 'ember-data';
export default DS.Model.extend({
name: DS.attr(),
requirements: DS.attr(),
skills: DS.attr()
});
C'est actuellement la route:
import Ember from 'ember';
export default Ember.Route.extend({
model() {
var obj = this.store.findAll('quest');
return obj;
}
});
Le firebase actuel DB est rempli de données factices, mais a également l'ID généré automatiquement généré par en utilisant la commande push, je ne sais pas si cela pose des problèmes. J'ai essayé de filtrer les données en utilisant le filtre dans la route mais je n'ai pas eu de succès et c'est la première fois que j'utilise le brai et la base de feu. Je vous remercie.
Modifier: J'ai créé un contrôleur pour tenter de filtrer les données. Les données sont transmises au contrôleur par le biais d'une action, mais je n'arrive pas à analyser les données. Voici le code du contrôleur:
import Ember from 'ember';
export default Ember.Controller.extend({
actions: {
filter() {
var model = this.get('model');
console.log(model);
this.toggleProperty('isExpanded');
}
}
Edit 2: J'ai mis à jour le contrôleur et peut correctement rechercher le DB firebase mais il ne lit pas ma valeur de recherche correctement. Si je change la ligne "startAt: search" en une ligne codée en dur, il filtre correctement. Des idées?
Édition 3: Joindre une image pour montrer à quoi ressemble la page en cours de chargement, ainsi que la journalisation de la recherche pour montrer qu'elle est passée. console on the load of the page est ici le code mis à jour dans le contrôleur:
import Ember from 'ember';
export default Ember.Controller.extend({
queryParams: ['search'],
search: ""
});
vous pouvez essayer filterBy méthode comme 'this.get ('model'). filterBy ('nom', 'typedvalue')' – kumkanillam
@kumkanillam J'ai essayé que dans le contrôle er mais il retourne un tableau vide. – pvelasqu
Le contrôleur et le nom du fichier de route sont identiques. mettre à jour votre code tenté en question – kumkanillam