Sử dụng Ruby 2.0.0-p195 với Rails 3.2.13 và v0.3.1 của postgres_ext gem. Dường như tôi thường gặp rắc rối với các bãi chứa lược đồ (không phải khối kết xuất SQL) bằng cách sử dụng Rails trong đó lược đồ dumper chuyển đổi các cột UUID thành cột văn bản và mảng thành cột văn bản với giá trị mặc định là "{}"
. Quay lại đầu trang hoạt động thường xuyên như rake db:schema:dump
nguyên nhân diffs phá hoại như sau:Rails 3.2 lược đồ biến tất cả các cột UUID thành văn bản và khai báo mảng mangles với postgres_ext gem
- t.string "dbas", :default => [], :array => true
- t.string "industries", :default => [], :array => true
+ t.text "dbas", :default => "{}"
+ t.text "industries", :default => "{}"
- t.uuid "uuid"
+ t.text "uuid"
Nếu tôi kiểm tra cấu trúc của DB bằng tay hoặc chỉ cần hỏi Rails loại cột gõ nó nghĩ một thuộc tính nhất định có, mọi thứ trông giống tốt.
Đương nhiên, vấn đề này làm hỏng tất cả các loại tàn phá. Ngắn của chuyển sang một kết cấu cấu trúc SQL, làm thế nào tôi có thể nhận được các lược đồ thích hợp?
Vấn đề GitHub cho câu hỏi này: https://github.com/dockyard/postgres_ext/issues/83 –