Comment accéder à la base de données SQLite Rails par défaut?
Je voudrais voir les données dans ma base de données tout en développant avec Rails (en fait dans tous les 3 d'entre eux développement, test et production). Je n'ai pas touché les configs, donc ça devrait être facile, mais je n'ai pas pu trouver d'informations utilisables.
Je n'ai aucune idée de ce que pourrait être la chaîne de connexion ou de l'endroit où l'entrer, car Aptana (v. 3) semble manquer de la bonne vieille vue de l'Explorateur de sources de données que je connais D'Eclipse. Quelqu'un pourrait-il me diriger dans la bonne direction?
EDIT: je suis en train de travailler sur linux-Mint 12
7 réponses
Vous avez négligé de mentionner le système d'exploitation que vous utilisez.
Une façon est d'utiliser la commande sqlite3
dans votre terminal.
sqlite3 db/development.sqlite3
Cependant, pour des choses comme inspecter vos lignes, vous feriez mieux d'utiliser une console rails.
rails c
> User.all # Where user is your model.
Remarque: {[11] } Ne modifiez pas votre schéma de base de données directement via sqlite3, ce à quoi vous pouvez être habitué si vous venez d'un arrière-plan de pile web différent. C'est parce que la prochaine fois que vous exécutez les migrations, l'état sera différent de ce que rails attend.
Rails 3 fournit une commande générique pour accéder au client de base de données correct et transmettre le nom de la base de données correcte pour votre environnement actuel. Cette commande est rails dbconsole
, qui peut être réduit à rails db
$ rails db
SQLite version 3.6.12
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
Cette commande n'offre pas beaucoup plus que la réponse de Gazler et en fait son conseil d'utiliser la console est un bon conseil, mais le côté positif de cette méthode est qu'elle utilisera le bon client si votre base de données est différente dans d'autres environnements.
Utiliser
SQLite> .tables
Cela vous donnera la liste de toutes les tables existent dans la base de données sélectionnée
@ @ pour activer le consol
SQLite> rails dbconsole
@@pour afficher les tableaux
SQLite>.tables
@@ pour afficher toutes les lignes dans un tableau
SQLite> select * from posts
Il existe une excellente application pour parcourir les bases de données sqlite3. Navigateur De Base De Données SQLite .
P.S. Vous avez mentionné que vous utilisez Aptana studio. J'ai commencé mon apprentissage RoR avec cet IDE, mais plus tard j'ai découvert Sublime Text et je n'ai jamais voulu utiliser autre chose depuis, je vous conseille de le vérifier.
Santé
Vous pouvez accéder en ligne à votre base de données si vous utilisez activeadmin
.
Ajoutez simplement la gemme activeadmin-sqlpage :
gem 'activeadmin-sqlpage'
Et créer la page activeadmin:
# file app/admin/sql.rb
ActiveAdmin::SqlPage::register
Redémarrez votre serveur. Ensuite, allez dans le panneau d'administration et naviguez dans le menu SQL
. Entrez une commande sql et appuyez sur le bouton Ctrl+Enter
ou Submit
.
Ouvrez terminal et tapez cette commande. Cela ouvrira une console rails pour interroger la base de données.
rails c
Pour obtenir la liste de tous les modèles que vous pouvez utiliser la commande suivante
ActiveRecord::Base.connection.tables
Exemple: ["schema_migrations", "ar_internal_metadata", "catégories", "les éléments"]
Dans la liste des modèles, vous pouvez obtenir les premiers, derniers ou tous les enregistrements.
Category.all
Si vous utilisez L'IDE RubyMine, vous pouvez accéder à la source de données sqllite à partir de là. Vous pouvez exécuter des requêtes ou modifier des données dans la base de données à l'aide de L'interface graphique.