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

47
demandé sur ROMANIA_engineer 2012-04-16 13:30:27

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.

72
répondu Gazler 2012-04-16 09:51:15

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.

39
répondu Steve Weet 2012-04-16 10:21:06

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
8
répondu Tarun Gupta 2013-07-25 16:55:17

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é

5
répondu Dmitry Matveev 2015-08-28 14:42:37

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.

0
répondu oklas 2017-04-01 16:40:47

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
0
répondu supritshah1289 2017-12-27 04:28:27

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.

0
répondu Ievgen 2018-07-28 11:37:33