tôi đã sử dụng các kỹ thuật được mô tả ở đây: How to assign a remote file to Carrierwave?
Điều này có thể không phải là cách tốt nhất để đi, Nhưng nó làm việc cho tôi. Tệp từ xa của tôi đã xảy ra là tên/đường dẫn tệp cũ.
Trước tiên, tôi đã thay đổi người tải lên Carrierwave để có kiểu tên tệp mới mà tôi muốn. Sau đó, tôi đã viết một nhiệm vụ cào để lặp qua các hồ sơ và cập nhật các tập tin như thế này:
model.remote_image_url = old_image_url
model.save!
này sẽ tải lên các tập tin hiện một lần nữa, thiết lập tên/path dựa trên Uploader cập nhật của bạn (và lí tất cả các phiên bản). Tôi đã không giải quyết vấn đề làm sạch các tập tin cũ được nêu ra, tôi không chắc chắn làm thế nào điều này sẽ làm việc nếu store_dir của bạn là như nhau (tôi thay đổi là tốt).
Đảm bảo kiểm tra kỹ lưỡng trên một vài bản ghi trước khi chạy qua toàn bộ bảng, thật dễ dàng để tạo ra nhiều thứ. Lưu ý rằng việc thay đổi store_dir của bạn sẽ phá vỡ tất cả các tra cứu của bạn cho các tệp hiện có.