Подтвердить что ты не робот

Ruby on Rails множественное (контроллер) и сингулярное (модельное) соглашение - объяснение

В соответствии с соглашением Ruby on Rails имена контроллеров становятся множественными, а имена моделей - единственными. Пример: контроллер пользователя, но модель пользователя.

rails generate controller Users
rails generate model User name:string email:string

Теперь откройте файл миграции

 class CreateUsers < ActiveRecord::Migration
  def change
    create_table :users do |t|
      t.string :name
      t.string :email    
      t.timestamps
    end
  end
end

Здесь имя таблицы является множественным (пользователи).

Итак, мой вопрос: почему имя таблицы является множественным (пользователи), хотя имя модели является единственным (Пользователь)?

4b9b3361

Ответ 1

Ruby on Rails следуют лингвистической конвенции. Это означает, что модель представляет собой одного пользователя, тогда как таблица базы данных состоит из многих пользователей.

Ответ 2

Экземпляр вашей модели User представляет одного пользователя, поэтому является единственным. В таблице users, напротив, хранятся все ваши пользователи, поэтому это множественное число.

Ответ 3

Чтобы ответить Эмили

Экземпляр вашей модели User представляет одного пользователя, поэтому он является единственным. Таблица пользователей, напротив, содержит всех ваших пользователей, поэтому она множественная.

Ответ 4

in rails conntroller и имя таблицы - это множественная модель, единственная единственная. В двух словах слово второе слово плюрализовано!

Ответ 5

Поскольку таблица содержит пользователей. Это просто соглашение.