我在Rails 3中创建了一个脚手架并运行了迁移。但是当我尝试使用rails控制台创建模型的实例时,它不起作用。我在Rails 4中重复了相同的过程,它完美无缺。 这是我输入的命令。
rails new testApp rails g scaffold测试名称:字符串 rake db:migrate rails console p = Test.new
以下是我得到的回复:
1.9.3p194:002> p = Test.new
NoMethodError:未定义的方法new' for Test:Module
from (irb):2
from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.15/lib/rails/commands/console.rb:47:in
start'
来自/usr/local/rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.15/lib/rails/commands/console.rb:8:in start'
from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.15/lib/rails/commands.rb:41:in
'
来自script / rails:6:require'
from script/rails:6:in
'
请帮忙。我是铁轨的初学者。谢谢。
答案 0 :(得分:2)
Test
是单元测试的模块。当您在控制台中键入它时,将显示此常量而不是您自己的模型。
唯一的教训是避免在应用的常量名称中使用敏感名称。
答案 1 :(得分:0)
有关保留关键字的完整列表,请查看: http://reservedwords.herokuapp.com/