J'ai une application Rails/Mongoid qui affiche les données côté client à l'aide de graphiques. En ce moment, pour passer les données à Javascript, j'utilise une requête Mongoid et le fichier as_json/to_json de Rails dans le fichier modèle. Cela me semble très inefficace car les données json doivent être analysées dans des structures ruby, puis reconverties en JSON. C'est correct quand il y a une petite quantité de données, mais dans mon cas, il peut y en avoir beaucoup. Donc, ma question est, comment puis-je faire une requête mongodb brut, et juste écrire la sortie directement dans le tampon de réponse Rails sans passer par la sérialisation/désérialisation de Ruby JSON?Requête mongodb brute dans les rails
5
A
Répondre
3
Les données dans MongoDB sont stockées dans BSON, qui n'est pas JSON. Le pilote ruby effectue la désérialisation (BSON :: BSON_CODER.deserialize) dans la méthode read_documents. Si vous souhaitez rouler votre propre BSON-to-JSON, vous aurez besoin de votre implémentation de BSON :: BSON_coder.deserialize, et, probablement, réécrire plus de parties dans mongo-ruby driver. Toutefois, si cela est une surcharge qui est acceptable, alors vous aurez juste sous-classe ActionController :: Métal et faire quelque chose comme ceci:
class ChartController < ActionController::Metal
def chart
res = fetch_data_from_mongodb
self.content_type = 'application/json'
self.response_body = res.to_json
end
end
Une autre alternative pourrait être en utilisant l'interface REST HTTP du MongoDB, qui fournit JSON. Mais vous devrez avoir un certain contrôle d'accès dans votre application, et, fondamentalement, des demandes de proxy.
Questions connexes
- 1. mongodb pilote java - commande brute?
- 2. android requête brute
- 3. Laravel 4 requête brute
- 4. Requête brute à Eloquent
- 5. Rails: Extraction de l'URL brute de la requête
- 6. Voir la requête XML brute
- 7. Problème de requête brute Android
- 8. % embrouille python requête SQL brute
- 9. Comment convertir cette requête SQL brute en requête Arel?
- 10. Requête pour des correspondances proches dans MongoDB et Rails 3
- 11. ckeditor dans les rails avec mongodb
- 12. comme requête dans mongoDB
- 13. Requête imbriquée dans mongoDB
- 14. Stocker une requête MongoDB (complexe) dans MongoDB
- 15. Hibernate - Requête brute execution_KEY Mots Problème dans la requête?
- 16. Requête d'agrégation dans MongoDB
- 17. Requête dans MongoDB
- 18. Performances MySQL: requête brute ou procédure stockée
- 19. Base de données d'arborescence binaire brute ou MongoDb/MySQL/Etc?
- 20. Rails: Magasin JSON dans MongoDB
- 21. Laravel, convertissant les données de la requête brute en JSON
- 22. MongoDB de recherche dans des rails
- 23. CakePhp mysql erreur de requête brute
- 24. django requête brute pourcentage problème de signe
- 25. Comment obtenir une requête brute en PHP?
- 26. problèmes avec django paramètres de requête brute
- 27. Obtenir la requête brute en utilisant PHP
- 28. exécution requête MongoDB dans Node.js
- 29. Imprimez toute la requête http brute
- 30. Custom Requête de requête MongoDB
pouvez-vous donner quelques exemples? –