【问题标题】:Error when execute rails generate scaffold User name:string email:string执行rails生成脚手架时出错用户名:字符串电子邮件:字符串
【发布时间】:2014-07-21 21:01:05
【问题描述】:

我是 Ruby 的新手,我正在学习 Michael Hartl 制作的教程。 在第 2 章第 49 页中,本书指出:

rails generate scaffold User name:string email:string

执行后,应用程序显示:

    C:\demo_app>rails generate scaffold User name:string email:string
C:/demo_app/config/environments/development.rb:1:in `<top (required)>': undefine
d method `configure' for #<DemoApp::Application:0x35d3d98> (NoMethodError)
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/activesupport-
3.2.3/lib/active_support/dependencies.rb:251:in `require'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/activesupport-
3.2.3/lib/active_support/dependencies.rb:251:in `block in require'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/activesupport-
3.2.3/lib/active_support/dependencies.rb:236:in `load_dependency'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/activesupport-
3.2.3/lib/active_support/dependencies.rb:251:in `require'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.3
/lib/rails/engine.rb:571:in `block in <class:Engine>'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.3
/lib/rails/initializable.rb:30:in `instance_exec'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.3
/lib/rails/initializable.rb:30:in `run'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.3
/lib/rails/initializable.rb:55:in `block in run_initializers'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.3
/lib/rails/initializable.rb:54:in `each'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.3
/lib/rails/initializable.rb:54:in `run_initializers'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.3
/lib/rails/application.rb:136:in `initialize!'
        from C:/demo_app/config/environment.rb:5:in `<top (required)>'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.3
/lib/rails/application.rb:103:in `require'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.3
/lib/rails/application.rb:103:in `require_environment!'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.3
/lib/rails/commands.rb:25:in `<top (required)>'
        from bin/rails:4:in `require'
        from bin/rails:4:in `<main>'

我已经使用捆绑安装、捆绑更新、安装新(和旧)版本的 gems... 有人可以指导我什么是错的吗? 或一种避免此错误的方法,以便进行后续步骤。

谢谢,

【问题讨论】:

  • 能否请您发布您的config/environments/development.rb 和您使用的Rails 版本。
  • @jkmr 你说得对,我按照步骤解决了问题。谢谢。

标签: ruby-on-rails ruby


【解决方案1】:

试试这个:

bundle exec rails generate scaffold User name:string email:string

【讨论】:

  • 谢谢,但它不起作用....C:\demo_app&gt;bundle exec rails generate scaffold User name:string email:string Usage: rails new APP_PATH [options] 选项:....
【解决方案2】:

我解决了这个问题。 步骤是:

  1. 更正文件development.rb,包括第一行DemoApp::Application.configure do
  2. 后来我在尝试执行rails generate scaffold User name:string email:string时发现了另一个问题。 问题的描述是: C:\demo_app>rails 生成脚手架用户名:字符串电子邮件:字符串 调用 active_record C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/activerecord-3.2.3/lib/acti ve_record/dynamic_matchers.rb:50:in method_missing': undefined methodmigratio n_error=' for ActiveRecord::Base:Class (NoMethodError)

  3. 最后,我删除config/environments/development.rb中的以下行: config.active_record.migration_error = :page_load

我在下一个答案之间混合使用:

【讨论】:

    猜你喜欢
    • 2015-11-02
    • 2017-09-04
    • 2023-03-10
    • 2021-10-23
    • 2017-12-11
    • 1970-01-01
    • 1970-01-01
    • 2023-02-04
    • 1970-01-01
    相关资源
    最近更新 更多