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

ruby-on-rails – Rails3控制器Plural / Singular Routes

发布时间:2020-12-17 02:53:09 所属栏目:百科 来源:网络整理
导读:我的rails3应用程序中的控制器存在一些问题,称为nas 我的ruby应用程序已连接到现有数据库,因此表名必须保持为nas. 在我的模型中,我以前能够做到这一点: set_table_name 但我不知道如何在我的控制器/路线中这样做. 现在,我的路线包含: resources :nas 输出
我的rails3应用程序中的控制器存在一些问题,称为nas

我的ruby应用程序已连接到现有数据库,因此表名必须保持为nas.

在我的模型中,我以前能够做到这一点:

set_table_name

但我不知道如何在我的控制器/路线中这样做.

现在,我的路线包含:

resources :nas

输出是:

new_na GET    /nas/new(.:format)               {:action=>"new",:controller=>"nas"}
       edit_na GET    /nas/:id/edit(.:format)          {:action=>"edit",:controller=>"nas"}
            na GET    /nas/:id(.:format)               {:action=>"show",:controller=>"nas"}
               PUT    /nas/:id(.:format)               {:action=>"update",:controller=>"nas"}
               DELETE /nas/:id(.:format)               {:action=>"destroy",:controller=>"nas"}

正如你所看到的,rails掉落’s’

我该如何解决这个问题?

谢谢

解决方法

这很令人困惑,因为我不知道“na”或“nas”是什么.从你的问题我的想法,你总是想把它称为“nas”,复数和单数.

如果是这种情况,那么答案就是把它放在config / initializers / inflections.rb中:

ActiveSupport::Inflector.inflections do |inflect|
  inflect.uncountable "nas"
end

这也将使您的Nas模型默认使用nas表,因此不需要set_table_name.

但请注意,如果您不想使用Nas作为控制器,则没有理由!您可以将它们命名为任何您喜欢的名称,只要这在routes.rb中反映出来并且您在控制器中使用了正确的模型即可.

(编辑:李大同)

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

    推荐文章
      热点阅读