質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

1回答

1366閲覧

Rails : migrationで生成されたテーブルの確認(PostgreSQL)

innjera

総合スコア132

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2017/02/08 03:41

Rails 5.0.0.1Ruby 2.3.0PostgreSQL 9.6.1にて開発しています。

普段、migration実行後に以下コマンドを入れて、生成されたテーブルを確認しています。

rails r 'モデル名.columns.each { |c| p [c.name, c.type]}'

今回、以下migration fileをmigrateし、成功している様なのですが、上記コマンドを打つと、エラーが出てしまいます。原因分からず、お分かりの方、ご指摘頂けますと幸甚です。

尚、同時にmigrationしているテーブルが上記コマンドで問題なく生成されたテーブルを確認できています。

ruby

1class CreateMessages < ActiveRecord::Migration[5.0] 2 def change 3 create_table :messages do |t| 4 t.references :user, null: false 5 t.references :adviser, null: false 6 t.integer :root_id #messageへの外部キー 7 t.integer :parent_id #messageへの外部キー 8 t.string :type, null: false #継承カラム 9 t.string :status, null: false, default: 'new' 10 t.string :subject, null: false 11 t.text :body 12 t.text :remarks 13 t.boolean :discarded, null: false, default: false 14 t.boolean :deleted, null: false, default: false 15 16 t.timestamps 17 end 18 19 add_index :messages, [:type, :user_id] 20 add_index :messages, [:user_id, :discarded, :created_at] 21 add_index :messages, [:type, :adviser_id] 22 add_index :messages, [:user_id, :deleted, :created_at] 23 add_index :messages, [:user_id, :deleted, :status, :created_at], name: 'index_messages_on_c_d_s_c' 24 add_index :messages, [:root_id, :deleted, :created_at] 25 add_foreign_key :messages, :users 26 add_foreign_key :messages, :advisers 27 add_foreign_key :messages, :messages, column: 'root_id' 28 add_foreign_key :messages, :messages, column: 'parent_id' 29 end 30end

rails r 'Message.columns.each { |c| p [c.name, c.type]}'で吐き出されるエラー。繰り返しですが、他のモデルではこのコマンドで問題なく動きます。

$ bin/rails r 'Message.columns.each { |c| p [c.name, c.type]}' Running via Spring preloader in process 88487 Please specify a valid ruby command or the path of a script to run. Run 'bin/rails runner -h' for help.

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

satoshih

2017/02/08 06:11

DISABLE_SPRING=1 bin/rails r 'Message.columns.each { |c| p [c.name, c.type]}' を試してもらえますか?
innjera

2017/02/08 22:51

コメント有難う御座います。同じ様なエラーになってしまいました。。$ DISABLE_SPRING=1 bin/rails r 'Message.columns.each { |c| p [c.name, c.type]}' Please specify a valid ruby command or the path of a script to run. Run 'bin/rails runner -h' for help.
guest

回答1

0

自己解決

原因不明ですが、何度かmigrationをやり直したところ動きましたのでcloseします。

投稿2017/02/09 14:58

innjera

総合スコア132

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問