加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 在模型名称中用大写字母覆盖Rails控制器路由

发布时间:2020-12-16 21:40:03 所属栏目:百科 来源:网络整理
导读:我想在rails中创建一个模型: rails generate model ABCThing 所以这将创建一个表,abc_things.大.控制器和路由出现问题.我要我的控制器是: class ABCThingsController ApplicationControllerend 但是,添加了routes.rb后 resources :abc_things,:only = [:in
我想在rails中创建一个模型:
rails generate model ABCThing

所以这将创建一个表,abc_things.大.控制器和路由出现问题.我要我的控制器是:

class ABCThingsController < ApplicationController
end

但是,添加了routes.rb后

resources :abc_things,:only => [:index]

并创建相应的索引视图,我在浏览器中收到以下错误:

Expected /app/controllers/abc_things_controller.rb to define AbcThingsController

问题很容易看到(“ABCThings”.tableize.classify =>“AbcThing”),但我不太确定如何解决它.我想覆盖rails默认路由从视图到控制器,但我不知道如何.

感谢任何帮助(和更好的问题标题的建议!)

解决方法

我有这个问题,并尝试所有上述解决方案后;能够使用拐角修复我的问题.

在我的情况下,问题是TLA :: ThingsController被解析为TlaThingsController

将以下内容放在我的初始化程序文件夹中进行修复

配置/初始化/是inflections.rb

ActiveSupport::Inflector.inflections do |inflect|
  inflect.acronym 'TLA'
end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读