2013-01-17 99 views
0

由於某些原因,當我在新的Rails應用上運行rails generate resource admin時,Rails生成了一個名爲admins的資源。它是否有任何理由這樣做?我希望資源被稱爲admin,而不是adminsRails將新資源名稱複數化

這裏是運行rails generate resource admin的輸出:

invoke active_record 
create db/migrate/20130117002055_create_admins.rb 
create app/models/admin.rb 
invoke test_unit 
create  test/unit/admin_test.rb 
create  test/fixtures/admins.yml 
invoke controller 
create app/controllers/admins_controller.rb 
invoke erb 
create  app/views/admins 
invoke test_unit 
create  test/functional/admins_controller_test.rb 
invoke helper 
create  app/helpers/admins_helper.rb 
invoke  test_unit 
create  test/unit/helpers/admins_helper_test.rb 
invoke assets 
invoke  coffee 
create  app/assets/javascripts/admins.js.coffee 
invoke  scss 
create  app/assets/stylesheets/admins.css.scss 
invoke resource_route 
route resources :admins 
+0

你確實有一個名爲admin的資源嗎?或者,您打算使用哪個區域管理網站?如果是後者,則可能需要命名空間。 – Swards

+0

這是預期的。按照慣例,Rails假設'admin'是一個_single_資源的名稱 - 你會注意到它創建了一個'Admin'模型(單數)。在我看來,你並不想讓管理員成爲一種資源,而是一種自定義路線。 – pje

回答

3

Rails的如下默認複數命名約定,如果你希望覆蓋這一點,你可以使用自定義的變形規則或編輯enviroment.rb文件兩種方式可以發現「How do I override rails naming conventions?」。