2012-04-09 30 views
54

Theo quy ước của Ruby on Rails, tên bộ điều khiển nhận được số nhiều trong khi các tên mẫu là số ít. Ví dụ: một bộ điều khiển người dùng, nhưng một mô hình người dùng.Ruby on Rails số nhiều (bộ điều khiển) và quy ước số ít (mẫu) - giải thích

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

Bây giờ mở tập tin chuyển đổi

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

đây tên bảng là số nhiều (người dùng).

Vì vậy, câu hỏi của tôi là - Tại sao tên bảng là số nhiều (người dùng) mặc dù tên mẫu là số ít (Người dùng)?

Trả lời

47

Ruby on Rails theo dõi quy ước ngôn ngữ. Điều đó có nghĩa là một mô hình đại diện cho một người dùng, trong khi bảng cơ sở dữ liệu bao gồm nhiều người dùng.

+3

Vậy câu chuyện về đa nguyên không chuẩn là gì? Ví dụ: nếu mô hình của tôi là "Hoạt động", bảng có kết thúc là "Hoạt động" hoặc "Hoạt động" không? – sak

+6

Nó sẽ là "hoạt động" phương pháp trợ giúp đường ray "đa nguyên" là rất thông minh. Nó biết rằng số nhiều của 'người' là 'con người', và vân vân. http://api.rubyonrails.org/classes/ActionView/Helpers/TextHelper.html#method-i-pluralize –

+2

Công thức mô hình hóa đa thức của Rails có giả định các mô hình được viết bằng tiếng Anh không? – duhaime

0

Vì bảng giữ người dùng. Nó chỉ là quy ước.

12

Ví dụ về mô hình User của bạn đại diện cho một người dùng duy nhất, vì vậy là số ít. Ngược lại, bảng users giữ tất cả người dùng của bạn, vì vậy số nhiều là số nhiều.

3

Để hoàn Emily trả lời

Một thể hiện của mô hình tài khoản của bạn đại diện cho một người dùng duy nhất, như vậy là số ít. Ngược lại, bảng người dùng giữ tất cả người dùng của bạn, vì vậy số nhiều người dùng.

Kiểm tra điều này link về quy ước đặt tên Rails.

1

trong đường ray conntroller và tên bảng là mô hình số nhiều một mình là số ít. Trong một từ hai từ thứ hai là số nhiều!

Các vấn đề liên quan