Tôi có mô hình Người dùng cần cột :email
(Tôi quên thêm cột đó trong khung ban đầu).Thêm cột vào bảng hiện có trong di chuyển Rails
Tôi đã mở tệp di chuyển và thêm t.string :email
, đã làm rake db:migrate
và nhận được NoMethodError
. Sau đó, tôi đã thêm dòng
add_column :users, :email, :string
lại rake db:migrate
, lần nữa NoMethodError
. Tôi có bỏ lỡ một bước ở đây không?
Chỉnh sửa: đây là tệp di chuyển.
class CreateUsers < ActiveRecord::Migration
def self.up
add_column :users, :email, :string
create_table :users do |t|
t.string :username
t.string :email
t.string :crypted_password
t.string :password_salt
t.string :persistence_token
t.timestamps
end
end
def self.down
drop_table :users
end
end
đường ray g di chuyển addEmailĐối với người dùng cũng hoạt động – wheresmycookie
Chỉ cần rõ ràng, chúng tôi sử dụng số nhiều? Vậy đó là 'add_email_to_users' và NOT' add_email_to_user'? – Purplejacket
Chính xác. Tên bảng trong Rails luôn luôn là số nhiều (để phù hợp với quy ước DB). – camdez