CoC in RoR is awesome, nevertheless, when starting in the framework, getting to know by memory the convention is quite hard, so here's a cheat sheet of how to name a model on each layer of a standard MVC app:
Layer | Plural or Singular | Files / Folders | Names |
---|---|---|---|
Database | plural | N/A | snake_case table names: users, todos, todo_items, organization_members, payment_confirmations |
Model | singular | snake_case files names: user.rb, todo.rb, todo_item.rb, organization_member.rb, payment_confirmation.rb | PascalCase classes names: User, Todo, TodoItem, OrganizationMember, PaymentConfirmation |
Controller | plural | snake_case files names: users_controller.rb, todos_controller.rb, todo_items_controller.rb, organization_members_controller.rb, payment_confirmations_controller.rb | PascalCase classes names: UsersController, TodosController, TodoItemsController, OrganizationMembersController, PaymentConfirmationsController |
View | plural |