Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails控制器名称_Ruby On Rails_Controller_Routes - Fatal编程技术网

Ruby on rails Rails控制器名称

Ruby on rails Rails控制器名称,ruby-on-rails,controller,routes,Ruby On Rails,Controller,Routes,我是RubyonRails世界的新手。我想用单数名代替复数名 这是我想要实现的url 这是我尝试的 rails g controller admin::login 当我尝试访问 http://foobar.com/admin/login 我明白了 uninitialized constant Admin::LoginsController 如何创建单数控制器而不是复数控制器?每当您违反Rails惯例时,您首先要问自己的是,为什么要这样做?如果要创建登录功能,则应具有管理员/用户控制器和会

我是RubyonRails世界的新手。我想用单数名代替复数名

这是我想要实现的url

这是我尝试的

rails g controller admin::login
当我尝试访问

http://foobar.com/admin/login
我明白了

uninitialized constant Admin::LoginsController

如何创建单数控制器而不是复数控制器?

每当您违反Rails惯例时,您首先要问自己的是,为什么要这样做?如果要创建登录功能,则应具有管理员/用户控制器和会话控制器。您仍然可以通过使用嵌套资源和自定义路由创建url/admin/login/,但在会话控制器中具有逻辑

但是如果你真的因为某种原因需要改变它,你可以使用这种技术:。

你应该先看看。例如:

namespace :admin do
  resources :posts, :comments
  match 'login' => 'controller#action'
end
它将生成带有
admin
前缀的路由。 所以,如果你想要单一的控制器,你应该深入研究拐点。查看以下链接:

例如,将以下行添加到您的
配置/初始值设定项/屈折变化.rb

ActiveSupport::Inflector.inflections do |inflect|
  inflect.uncountable "login"
end
通常,您应该使用
用户
会话
控制器来执行
登录
操作。例如,有关更多信息和用法,请参阅