为什么控制器名称是复数但 application_controller 本身是单数
Why Controller names are plural but application_controller is itself a singular
为什么控制器名称是复数,而 application_controller 本身是单数。
我很好奇,当我搭建一个人的脚手架时,rails 为它生成了一个 people_controller,我印象深刻,但后来我看到了 application_controller,它是单数的。有解释还是原样?
Rails 充满了惯例,控制器的复数名称只是其中的一个惯例。当您将 resources :books
放入您的 routes.rb
时,Rails 可以找到合适的控制器
您可以覆盖约定并明确指定控制器,resources :books, controller: "library"
。在这种情况下,Rails 将查找 LibraryController
.
使用 ApplicationController
,您不需要直接调用它,并且 Rails 不需要执行此查找,因此可以任意命名。例如,您可以重命名它。
为什么控制器名称是复数,而 application_controller 本身是单数。
我很好奇,当我搭建一个人的脚手架时,rails 为它生成了一个 people_controller,我印象深刻,但后来我看到了 application_controller,它是单数的。有解释还是原样?
Rails 充满了惯例,控制器的复数名称只是其中的一个惯例。当您将 resources :books
放入您的 routes.rb
您可以覆盖约定并明确指定控制器,resources :books, controller: "library"
。在这种情况下,Rails 将查找 LibraryController
.
使用 ApplicationController
,您不需要直接调用它,并且 Rails 不需要执行此查找,因此可以任意命名。例如,您可以重命名它。