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

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

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

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

Q&A

解決済

2回答

4014閲覧

「rake db:migrate」で躓いています

nakaojin

総合スコア13

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

0グッド

1クリップ

投稿2017/05/18 19:24

先日もお世話になったのですが今度は、「rake db:migrate」のところで躓いています。
ネットでググッテみたのですか、該当するような事例を探し当てることができませんでした。
どのようにすればよいのでしょうか。
誠に勝手ですが、初心者でも実行可能な方法で教えていただけると有難いのですが、よろしくお願い致します。

1 実行例

naka@naka-virtual-machine:~/work/kounyu$ rake db:migrate
== 20170518065810 CreateUsers: migrating ======================================
-- create_table(:users)
rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:

undefined method INTEGER' for #<ActiveRecord::ConnectionAdapters::TableDefinition:0x005615bd83a3c8> /home/naka/work/kounyu/db/migrate/20170518065810_create_users.rb:8:in block in change'
/home/naka/work/kounyu/db/migrate/20170518065810_create_users.rb:3:in change' NoMethodError: undefined method INTEGER' for #ActiveRecord::ConnectionAdapters::TableDefinition:0x005615bd83a3c8
/home/naka/work/kounyu/db/migrate/20170518065810_create_users.rb:8:in block in change' /home/naka/work/kounyu/db/migrate/20170518065810_create_users.rb:3:in change'
Tasks: TOP => db:migrate
(See full trace by running task with –trace)

2 作成されている「users.rb」の内容

class CreateUsers < ActiveRecord::Migration
def change
create_table :users do |t|
t.string :Store
t.string :name
t.string :Item
t.string :name
t.INTEGER :unit
t.INTEGER :price
t.INTEGER :number
t.INTEGER :amount
t.TEXT :remarks

t.timestamps null: false end

end
end

3 作業環境は次のとおりです。
ruby ruby 2.4.0
rails Rails 4.2.8
sqlite 2.8.17
ubuntu16-04 LTS

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

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

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

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

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

guest

回答2

0

ベストアンサー

t.stringt.textと、小文字で書く必要があります。

Rubyでは、メソッド名を「小文字+アンダーバー」で書く慣習となっています(大文字なども文法上は使えますが、あまり使いません)。

投稿2017/05/18 22:21

maisumakun

総合スコア145123

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

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

nakaojin

2017/05/18 22:55

度々のご指摘有難うございます。 無事、完成することができました。 今後とも何かとお世話になることと思いますがよ芳区お願いします。
guest

0

undefined method INTEGER' for #ActiveRecord::ConnectionAdapters::TableDefinition:0x005615bd83a3c8

/home/naka/work/kounyu/db/migrate/20170518065810_create_users.rb:8:in block in change'

エラーメッセージに「/home/naka/work/kounyu/db/migrate/20170518065810_create_users.rbファイルの8行目の INTEGER ですが、そんなメソッドはありません」と出ています。

メソッドというのは aaa.bbb のような記述で bbb の部分をさしており、とりあえず「ドットの右側に書いてあるものがメソッド」と考えておけばよいです。

t.INTEGER ⇒ t.integer t.TEXT ⇒ t.text

投稿2017/05/18 22:45

tkmtmkt

総合スコア1800

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問