rwb*_*rwb 12 ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1
我想在rails中创建一个模型:
rails generate model ABCThing
Run Code Online (Sandbox Code Playgroud)
所以这将创建一个表,abc_things.大.问题出在控制器和路由上.我希望我的控制器是:
class ABCThingsController < ApplicationController
end
Run Code Online (Sandbox Code Playgroud)
但是,加入之后 routes.rb
resources :abc_things, :only => [:index]
Run Code Online (Sandbox Code Playgroud)
并创建相应的index视图,我在浏览器中收到以下错误:
Expected /app/controllers/abc_things_controller.rb to define AbcThingsController
Run Code Online (Sandbox Code Playgroud)
问题很容易看到("ABCThings".tableize.classify => "AbcThing"),但我不太确定如何解决它.我想覆盖从视图到控制器的rails默认路由,但我不知道如何.
将不胜感激任何帮助(以及更好的问题标题的建议!)
Tyr*_*son 17
在尝试了上述所有解决方案后,我遇到了这个问题; 能够使用变形器修复我的问题.
在我的情况下,问题TLA::ThingsController是正在解决的问题Tla::ThingsController
将以下内容放入我的初始化文件夹中修复它
config/initializers/inflections.rb
ActiveSupport::Inflector.inflections do |inflect|
inflect.acronym 'TLA'
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4358 次 |
| 最近记录: |