Ruby on rails 铁路超高rake db:迁移未定义的方法erorr

Ruby on rails 铁路超高rake db:迁移未定义的方法erorr,ruby-on-rails,ruby-on-rails-3,activerecord,rubygems,Ruby On Rails,Ruby On Rails 3,Activerecord,Rubygems,大家好,我是rails的新手,刚刚开始。每次尝试运行rake db:migrate时,我都会得到以下结果(跟踪): rake数据库:迁移 ==CreateModelNames:正在迁移=============================================== --创建表格(:模型名称) 雷克流产了! StandardError:发生错误,所有后续迁移均已取消: #/db/migrate//20191018075455_create_model_names的未定义方法'feld

大家好,我是rails的新手,刚刚开始。每次尝试运行rake db:migrate时,我都会得到以下结果(跟踪):

rake数据库:迁移
==CreateModelNames:正在迁移===============================================
--创建表格(:模型名称)
雷克流产了!
StandardError:发生错误,所有后续迁移均已取消:
#/db/migrate//20191018075455_create_model_names的未定义方法'feldtyp'。rb:4:in'up_而不带_基准'
./db/migrate//20191018075455_创建_模型_名称。rb:3:in'up_不带_基准'
(授权):2:在“发送”中
(代表团):2:在“迁移”中
任务:TOP=>db:migrate
(通过使用--trace运行任务查看完整跟踪)
david@david-桌面:~/Railsprojekte/david$rake db:migrate--trace**Invoke db:migrate(第一次)
**调用环境(第一次)
**执行环境
**执行数据库:迁移
==CreateModelNames:正在迁移===============================================
--创建表格(:模型名称)
雷克流产了!
StandardError:发生错误,所有后续迁移均已取消:
#/db/migrate//20191018075455_create_model_names的未定义方法'feldtyp'。rb:4:in'up_而不带_基准'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2/lib/active\u record/connection\u adapters/abstract/schema\u statements.rb:104:in'create\u table'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2/lib/active\u record/connection\u adapters/mysql\u adapter.rb:445:in'create\u table'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2/lib/active\u record/migration.rb:346:in'send'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2/lib/active\u record/migration.rb:346:in'method\u missing'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2/lib/active\u record/migration.rb:326:in“随时间说”
/usr/local/lib/ruby/1.8/benchmark.rb:293:in'measure'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2/lib/active\u record/migration.rb:326:in“随时间说”
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active\u record/migration.rb:342:in'method\u missing'
./db/migrate//20191018075455_创建_模型_名称。rb:3:in'up_不带_基准'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active\u record/migration.rb:280:in'send'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active\u record/migration.rb:280:in'migrate'
/usr/local/lib/ruby/1.8/benchmark.rb:293:in'measure'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active\u record/migration.rb:280:in'migrate'
(授权):2:在“发送”中
(代表团):2:在“迁移”中
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active\u record/migration.rb:480:in'migrate'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active\u record/migration.rb:556:in'call'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active\u record/migration.rb:556:in'ddl\u transaction'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active\u record/migration.rb:479:in“migrate”
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:466:in'each'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2/lib/active\u record/migration.rb:466:in“migrate”
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active\u record/migration.rb:394:in'up'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2/lib/active\u record/migration.rb:377:in“migrate”
/usr/local/lib/ruby/gems/1.8/gems/rails-2.2.2/lib/tasks/databases.rake:111
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/task.rb:240:in'call'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/task.rb:240:in'execute'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/task.rb:235:in'each'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/task.rb:235:in'execute'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/task.rb:179:in'invoke_with_call_chain'
/usr/local/lib/ruby/1.8/monitor.rb:242:“同步”中
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/task.rb:172:在“用调用链调用”中
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/task.rb:165:in'invoke'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:150:in'invoke_task'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:106:“顶级”
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:106:in'each'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:106:“顶级”
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:115:在“用线程运行”中
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:100:“顶级”
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:78:in'run'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:176:在“标准异常处理”中
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:75:in'run'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/bin/rake:33
/usr/local/bin/rake:26:in“装载”
/usr/local/bin/rake:26
任务:TOP=>db:migrate
我的代码是:

class CreateModelNames < ActiveRecord::Migration
  def self.up
    create_table :model_names do |t|
      t.feldtyp :feld_name

      t.timestamps
    end
  end

  def self.down
    drop_table :model_names
  end
end
class CreateModelNames
任何帮助都将被请求:)


LG

错误表明,
feldtype
不是一种已知的方法,当我查看您的迁移时,它看起来非常奇怪,不确定是哪种语言,但它似乎是迁移的理论描述(写入字段类型,后跟字段名)

feldtype
替换为实际的数据库列类型。比如写

t.string :feld_name
(除非
feld_name
对您的示例有完美的含义,否则请使用更有意义/更合适/更具表达力的内容,当然这取决于您的问题领域)

也许你应该检查一下导轨:

可能的列类型有:
binary、boolean、date、datetime、decimal、float、integer、p
t.string :feld_name