Je me demandais si vous pouviez lister/examiner quelles bases de données/objets sont disponibles dans la console Rails. Je sais que vous pouvez les voir en utilisant d'autres outils, je suis juste curieux. Merci.Rails: Comment lister les tables/objets de base de données à l'aide de la console Rails?
Répondre
Vous cherchez probablement:
ActiveRecord::Base.connection.tables
et
ActiveRecord::Base.connection.table_structure("projects")
Vous devrait probablement envelopper dans plus court s yntax à l'intérieur de votre .irbrc
.
Merci, le premier fonctionne comme je le veux. Mais le second ne cherche pas quelque chose de similaire mais pas de chance. – rtfminc
ActiveRecord :: Base.connection.columns ("foos") devrait aussi fonctionner, mais il retourne les objets de la colonne, .map {| c | [c.nom, c.type]} à la fin corrige cela. – cwninja
'table_structure' semble être spécifique à l'adaptateur sqlite. – Kelvin
Son un début, il peut la liste:
models = Dir.new("#{RAILS_ROOT}/app/models").entries
Vous cherchez un peu plus ...
en faisant cela vous suffit de lister les fichiers modèles que se passe-t-il si les tables existent en db et n'ont pas de modèle fild dans le répertoire des modèles !! –
Pour obtenir une liste de toutes les classes de modèle, vous pouvez utiliser ActiveRecord::Base.subclasses
par exemple.
ActiveRecord::Base.subclasses.map { |cl| cl.name }
ActiveRecord::Base.subclasses.find { |cl| cl.name == "Foo" }
Aussi: 'ActiveRecord :: Base.descendants.map (&: nom)' – valk
J'espère que ma réponse tardive peut être utile.
Cela ira à la console de base de données de rails.
rails db
enluminer votre sortie de la requête
.headers on
.mode columns
(turn headers on and show database data in column mode)
Afficher les tables
.table
'.help' pour voir l'aide.
Ou utilisez des instructions SQL telles que 'Select * from cars'
'rails dbconsole' vous place dans l'interpréteur de ligne de commande (CLI) de n'importe quel moteur de base de données que vous utilisez ... ce qui précède sont des commandes SQLite. Postgres, par exemple, utiliserait '\ dt' pour lister les tables ... –
est-il un moyen de s'assurer que chaque fois que vous n'avez pas à appliquer .headers sur et .more colonnes lors de l'exécution des rails db – Mark
Vous pouvez utiliser rails dbconsole
pour afficher la base de données utilisée par votre application rails. C'est une réponse alternative rails db
. Les deux commandes vous dirigeront vers l'interface de ligne de commande et vous permettront d'utiliser cette syntaxe de requête de base de données.
- 1. Comment recharger ma base de données dans la console Rails?
- 2. comment ajouter des données à la base de données de la console rails
- 3. Comment tester les rails à partir de la console?
- 4. rails: modification de la base de données
- 5. Modification des ID de base de données à partir de la console Rails?
- 6. Rails: Comment désérialiser de la base de données?
- 7. Transférer la base de données à l'aide de Rails
- 8. Connexion depuis la base de données sqlite dans les rails
- 9. Rails: Rendre cette requête agnostique à la base de données ...?
- 10. comment lister tous les noms de base de données informix
- 11. Comment afficher les requêtes SQL exécutées dans la console Rails?
- 12. Mysql Constraign Entrées de base de données dans les rails
- 13. traduire les champs de base de données avec des rails
- 14. Ruby on Rails et les associations de base de données
- 15. Ruby on Rails n'ajoute enregistrement à la base de données
- 16. Rails update_attribute n'a pas atteint la base de données mysql
- 17. Rails: Adaptateur de base de données à détection automatique
- 18. Newbie rails base de données relation question
- 19. Modèle de délégué pour la base de données distante Rails?
- 20. Comment puis-je démarrer la console rails et utiliser la base de test uniquement?
- 21. Base de données Rails de MySQL à Postgres
- 22. JRuby on Rails sans base de données
- 23. L'objet Rails dans la base de données est invalide
- 24. rails association polymorphe (base de données héritée)
- 25. connaissance de la base de données en ruby sur rails
- 26. rails mise à jour schéma de base de données
- 27. Rails Annuler au niveau de la base de données
- 28. Connexion du modèle Rails à la base de données non-rails
- 29. Routage de Rails dynamiques basé sur la base de données
- 30. Rails CMS sans base de données
c'est ce que script/dbconsole est pour si – hgmnz
Oui, cela vous laisse tomber dans mysql (ou quoi que ce soit). Pour une raison inconnue je veux lister les colonnes/tables etc de la console régulière. Je pense que cela pourrait exiger des méthodes ruby sur mesure pour faire une telle chose. – rtfminc