2012-04-16 34 views
5

tài khoản của tôi Mẫu trông giống như:Cách tốt nhất để thêm các thuộc tính cho người dùng Model trong Ruby on Rails

class CreateUsers < ActiveRecord::Migration 
     def self.up 
     create_table :users do |t| 
     t.string :name 
     t.string :email 

     t.timestamps 
     end 
    end 

     def self.down 
     drop_table :users 
     end 
     end 

Nếu tôi muốn thêm một: attribute, nó là tốt nhất để tạo ra một tập tin chuyển đổi để thêm một cột mới (see another Stackoverflow thread) hoặc tôi chỉ cần thêm t.string: name_of_new_attribute và sau đó rake db: di chuyển?

Cảm ơn!

Trả lời

16

Cách thích hợp là tạo một di chuyển mới. Trong thư mục đường ray chính của dự án, chạy

rails generate migration AddDetailsToUser address:string age:integer vv ...

và sau đó chạy rake db:migrate

Một thay thế cho điều này là để chỉnh sửa các tập tin chuyển đổi ban đầu, thiết lập lại/phá hủy các cơ sở dữ liệu và chạy lại tất cả di chuyển.

+0

Vì vậy, khi tôi muốn thêm các thuộc tính khác trong tương lai, tôi có thể chỉ cần chỉnh sửa tệp di chuyển này không? – Elias7

+7

Bạn nên tạo một di chuyển khác với các thuộc tính mới trong đó – Norto23

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