Tôi đã tạo một bảng mới bao gồm cột "ghi chú". Mặc định là varchar (255) tôi tin nhưng tôi muốn cột này là một vùng văn bản so với một trường và để cho phép nhiều dữ liệu hơn. Tôi tưởng tượng rằng tôi sẽ thực hiện thay đổi này trong ActiveRecord :: Tệp di chuyển nhưng tôi tò mò về định dạng. Tôi chỉ cần thay đổi varchar (255) thành varchar (1000) chẳng hạn? (Nếu có định dạng là gì?câu hỏi di trú varchar cho Ruby on Rails
def self.up
create_table :notes do |t|
t.string :note :varchar(1000)
end
Đó có phải là định dạng đúng không? Hơn nữa, làm thế nào để tôi có được lĩnh vực nhập được nhiều hàng. Xin lỗi nếu điều này là dễ dàng thứ nhưng tôi mới để lập trình và RoR. Cảm ơn.
Tôi có thể thay đổi tệp ..._ create_notes.rb ban đầu đã được tạo không? Sau đó, làm rake db: di chuyển để thực hiện thay đổi này? Hoặc sẽ gây ra vấn đề và tôi nên làm một loại bỏ các cột cũ hoặc thay đổi? – bgadoci
Nếu bạn đã di chuyển, bạn cần phải xóa cơ sở dữ liệu, tạo lại và di chuyển (phá hủy tất cả dữ liệu trong cơ sở dữ liệu) hoặc bạn cần thay đổi các cột như Ben đề xuất. Nếu không, nếu bạn chưa di chuyển, chỉ cần thay đổi dòng trong di chuyển của bạn và chạy di chuyển. – EmFi
@bgadoci: Nếu bạn chưa từng gọi db: di chuyển sau khi quá trình di chuyển này được tạo, bạn có thể chỉ cần chỉnh sửa tệp trước khi gọi db: di chuyển. Nếu không, bạn có thể tạo di chuyển mới để thực hiện thay đổi: def self.up change_column: ghi chú,: lưu ý,: văn bản kết thúc –