web-dev-qa-db-ja.com

Rails:Railsコンソールを使用してデータベーステーブル/オブジェクトを一覧表示する方法

Railsコンソールで使用可能なデータベース/オブジェクトを一覧表示/調査できるかどうか疑問に思っていました。私はあなたが他のツールを使用してそれらを見ることができることを知っています、私はちょうど興味があります。ありがとう。

136
rtfminc

あなたはおそらく探しています:

ActiveRecord::Base.connection.tables

そして

ActiveRecord::Base.connection.columns('projects').map(&:name)

おそらく、.irbrc内で短い構文でラップする必要があります。

271
cwninja

私の遅い回答が助けになることを願っています。
これは、Railsデータベースコンソールに移動します。

Rails db

クエリ出力をきれいに印刷する

.headers on
.mode columns
(turn headers on and show database data in column mode )

テーブルを表示する

.table

ヘルプを表示するには「.help」。
または「Select * from cars」などのSQLステートメントを使用します

19
hamster ham

すべてのモデルクラスのリストを取得するには、ActiveRecord::Base.subclassesを使用できます。

ActiveRecord::Base.subclasses.map { |cl| cl.name }
ActiveRecord::Base.subclasses.find { |cl| cl.name == "Foo" }
7
DomQ

Rails dbconsoleを使用して、Railsアプリケーションが使用しているデータベースを表示できます。代わりの回答Rails dbです。両方のコマンドは、コマンドラインインターフェイスを指示し、そのデータベースクエリ構文を使用できるようにします。

4

これを実行します:

Rails.application.eager_load! 

それから

ActiveRecord::Base.descendants

モデル/テーブルのリストを返すには

0
user5783745