59

我想在使用 Rails 开发时查看我的数据库中的数据(实际上在所有 3 个开发、测试和生产中)。我没有碰过配置,所以应该很容易,但我找不到任何可用的信息。

我不知道连接字符串可能是什么或在哪里输入它,因为 Aptana (v.3) 似乎缺少我从 Eclipse 知道的良好的旧数据源浏览器视图。有人能指出我正确的方向吗?

编辑:我正在使用 linux - Mint 12

4

8 回答 8

88

您忽略了提及您正在使用的操作系统。

一种方法是sqlite3在终端中使用该命令。

sqlite3 db/development.sqlite3

但是,对于检查行之类的事情,最好使用 rails 控制台。

rails c
> User.all # Where user is your model.

注意:不要直接通过 sqlite3 更改您的数据库架构,如果您来自不同的 Web 堆栈背景,您可能会习惯这样做。这是因为下次运行迁移时,状态将与 rails 预期的不同。

于 2012-04-16T09:51:15.913 回答
43

Rails 3 提供了一个通用命令来访问正确的数据库客户端,并为您当前的环境传入正确数据库的名称。该命令rails dbconsole可以缩短为rails db

$ rails db
SQLite version 3.6.12
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> 

这个命令并没有提供比 Gazler 的答案更多的东西,事实上他使用控制台的建议是很好的建议,但是这种方法的好处是,如果您的数据库在其他环境中不同,它将使用正确的客户端。

于 2012-04-16T10:21:06.883 回答
8

采用

SQLite> .tables

这将为您提供所选数据库中存在的所有表的列表

@@激活控制台

SQLite> rails dbconsole

@@显示表格

SQLite>.tables

@@ 显示表中的所有行

SQLite> select * from posts
于 2013-07-25T16:55:17.947 回答
6

有一个很棒的应用程序可以浏览 sqlite3 数据库。SQLite 数据库浏览器

PS您提到您正在使用Aptana studio。我也用这个 IDE 开始了我的 RoR 学习,但后来发现了Sublime Text,从此再也不想使用其他任何东西,我建议你检查一下。

干杯

于 2013-08-30T07:54:17.640 回答
1

为了查看数据库上的数据,我使用了一个名为 DB Browser for SQLite 的 SQLite 客户端,这里是链接

这个应用程序也有一个 Linux 版本。应用程序目录上应该有一个sqlite扩展名的数据库文件db。在 DB Browser 上,选择 Open Database 选项并选择该文件,您应该能够查看数据。

于 2019-08-08T04:58:51.890 回答
0

如果您使用activeadmin.

只需添加 gem activeadmin-sqlpage

gem 'activeadmin-sqlpage'

并创建 activeadmin 页面:

# file app/admin/sql.rb
ActiveAdmin::SqlPage::register

重新启动您的服务器。然后转到管理面板并导航菜单SQL。输入任何 sql 命令并按Ctrl+EnterSubmit按钮。

于 2017-04-01T16:34:54.967 回答
0

打开终端并输入此命令。这将打开一个 Rails 控制台来查询数据库。

rails c

要获取所有模型的列表,您可以使用以下命令

ActiveRecord::Base.connection.tables

例如:["schema_migrations", "ar_internal_metadata", "categories", "items"]

从模型列表中,您可以获得第一条、最后一条或所有记录。

Category.all
于 2017-12-27T04:28:27.783 回答
0

如果您使用的是 RubyMine IDE,则可以从那里访问 sqllite 数据源。您可以使用 GUI 在数据库中运行查询或编辑数据。

于 2018-07-28T11:37:33.590 回答