[英]Rails 3.1 autoload issue with Erector
NameError (uninitialized constant Views::Setup::User):
app/views/setup/user.html.rb:1:in `_app_views_setup_user_html_rb___557294190_11042'
actionpack (3.1.12) lib/action_view/template.rb:144:in `render'
activesupport (3.1.12) lib/active_support/notifications.rb:55:in `instrument'
actionpack (3.1.12) lib/action_view/template.rb:142:in `render'
actionpack (3.1.12) lib/action_view/renderer/template_renderer.rb:40:in `render_template'
actionpack (3.1.12) lib/action_view/renderer/abstract_renderer.rb:33:in `instrument'
activesupport (3.1.12) lib/active_support/notifications.rb:53:in `instrument'
activesupport (3.1.12) lib/active_support/notifications/instrumenter.rb:21:in `instrument'
activesupport (3.1.12) lib/active_support/notifications.rb:53:in `instrument'
...
parameters: {"controller"=>"setup", "action"=>"user"}
似乎在开发模式下运行时,给定页面的第一个页面加载将成功,然后第二个页面加载将抛出此未初始化的常量错误,引用定义了常量(类)的文件。
在Rails 3.0之前可以正常工作。
在Rails 3.1和Erector gem之间似乎是一个问题。
由于某种原因,第一次加载后,未正确加载方案“ view_name.html.rb”中命名的视图。 名为“ view_name.rb”的相同文件可以正常工作。
碰到Rails 3.2时似乎不再是这种情况了,因此我认为这是3.1中的一个怪癖,它在自动加载时无法正确检查mime类型。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.