【问题标题】:Rails db:migrate aborted with "undefined local variable or method `limit'" why?Rails db:迁移因“未定义的局部变量或方法`limit'”而中止,为什么?
【发布时间】:2017-06-27 00:16:54
【问题描述】:

对不起我的英语。 我搜索了该站点,但找不到解决方案。 当我尝试制作 rails db: migrate 给我这个错误:

C:\PW\Sites\grota>rails db:migrate
== 20170209014957 CreateWholesalers: migrating     ================================
-- create_table(:wholesalers)
-- limit()
rails aborted!
StandardError: An error has occurred, all later migrations canceled:

undefined local variable or method `limit' for #    <CreateWholesalers:0x00000006bfc6a0>
C:/PW/Sites/grota/db/migrate/20170209014957_create_wholesalers.rb:7:in     `block in change'
C:/PW/Sites/grota/db/migrate/20170209014957_create_wholesalers.rb:3:in     `change'
bin/rails:4:in `require'
bin/rails:4:in `<main>'
NameError: undefined local variable or method `limit' for #    <CreateWholesalers:0x00000006bfc6a0>
C:/PW/Sites/grota/db/migrate/20170209014957_create_wholesalers.rb:7:in     `block in change'
C:/PW/Sites/grota/db/migrate/20170209014957_create_wholesalers.rb:3:in     `change'
bin/rails:4:in `require'
bin/rails:4:in `<main>'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)

这是我的迁移代码:

class CreateWholesalers < ActiveRecord::Migration[5.0]
  def change
    create_table :wholesalers do |t|
      t.string "brand_name", :limit => 25
      t.string "username", :limit => 25
      t.string "password_digest"
      t.string "email", limit => 50
      t.decimal "latitude"
      t.decimal "longitude"
      t.timestamps
    end
  end
end

提前谢谢你。

【问题讨论】:

    标签: ruby-on-rails variables methods undefined dbmigrate


    【解决方案1】:

    此行导致错误(缺少:):

    t.string "email", :limit => 50
    

    【讨论】:

      【解决方案2】:

      Cristiano Morais 应被标记为正确答案。这是一个拼写错误。缺少

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-04-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多