Làm cách nào để yêu cầu Paperclip không lưu tệp gốc khi tệp được tải lên? Hoặc thậm chí tốt hơn, để lưu trữ một phiên bản thu nhỏ của tập tin như bản gốc?Tôi làm cách nào để nói kẹp giấy không lưu tệp gốc?
Trả lời
Tôi tin rằng bạn có thể chỉ cần xác định kiểu cho: ban đầu để có kẹp giấy thay thế bản gốc bằng kích thước đó.
:styles => { :original => '300x168>', :cropped_thumb => {:geometry => "115x70#", :jcrop => true}, ...}
Kẹp giấy luôn luôn lưu một bản gốc theo mặc định, nhưng tôi 'tin', rằng nếu bạn chỉ xóa nó khỏi di chuyển của bạn thì nó sẽ không thử và lưu nó.
Tôi lưu bản gốc được chia tỷ lệ trên mô hình của mình để người dùng có thể chỉnh sửa hình ảnh của họ sau này. Mô hình của tôi trông giống như sau:
:styles => { :cropped_thumb => {:geometry => "115x70#", :jcrop => true}, :resized_thumb => {:geometry => "115x70>"}, :deal => {:geometry => "64x56#"},
:cropped_large => {:geometry => "#{PHOTO_IMAGE_WIDTH}x#{PHOTO_IMAGE_HEIGHT}#", :jcrop => true},
:resized_large => {:geometry => "#{PHOTO_IMAGE_WIDTH}x#{PHOTO_IMAGE_HEIGHT}>"},
:orig => '300x168>', #this is the scaled original that I call later
:cropped_orig => {:geometry => '300x168#', :jcrop => true},
:resized_orig => {:geometry => '300x168>'} },
:processors => [:jcropper]
Cảm ơn phản hồi của bạn, Chuyến đi. – Jade
Giải pháp của Cris G có thể tốt đẹp ở hầu hết các trường hợp đơn giản nhưng có giới hạn. xem xét rằng: phong cách: bản gốc Paperclip quá trình đầu tiên của tất cả những người khác, vì vậy sau khi cập nhật: hình ảnh ban đầu (nhỏ hơn nhiều bây giờ) sẽ là nguồn cho chế biến sau đây. Do đó bạn buộc phải giữ nguyên: kiểu gốc được phân giải tốt nhất. Tình hình trở nên tồi tệ hơn khi bạn cần cắt ảnh bằng bộ xử lý: đó là tình huống mà bạn thực sự cần cho chất lượng gốc thực sự.)
Vì vậy, tôi sẽ khuyên bạn hơi thô (cần phải tìm hiểu làm thế nào để có được tất cả các file đính kèm của mô hình) giải pháp:
after_save :reprocess_attach
private
def reprocess_attach
if self.<atch_name>.present? && Pathname.new(self.<atch_name>.path).exist?
self.<atch_name>.save
File.unlink(self.<atch_name>.path)
end
end
nó không quan tâm đến những gì chế biến đứng đằng sau sân khấu. Nó chỉ giết chết tệp gốc)
Bạn hoàn toàn đúng, ghi đè hình học: tác động ban đầu đến việc xử lý tất cả các hình ảnh khác. Nhưng bạn có thể giải thích giải pháp của bạn để ngăn chặn bản gốc được tải lên chi tiết hơn không, tôi đang bối rối! Cảm ơn! – Sujimichi
@Sujimichi tốt, sau khi lưu, "reprocess_attach" kiểm tra xem tệp đính kèm có tồn tại dưới dạng tệp gốc hay không. Nếu có, nó đảm bảo rằng tất cả các tập tin được flushed trong hệ thống tập tin (lưu) và sau khi xóa các tập tin gốc. –
- 1. Lưu tệp bằng cách sử dụng kẹp giấy qua API
- 2. từ đâu kẹp giấy có tên của tệp gốc?
- 3. Cách lưu ảnh raw_data bằng kẹp giấy
- 4. Tệp Kẹp Giấy Không tìm thấy Lỗi
- 5. Cách sử dụng url hình ảnh gốc trong kẹp giấy
- 6. Kẹp giấy - Xác thực Loại tệp nhưng không hiện diện
- 7. Kẹp giấy, fog.io và Rackspace
- 8. Lưu tệp PDF của Prawn dưới dạng tệp đính kèm Kẹp giấy?
- 9. Kẹp giấy không thể tìm thấy imagemagick
- 10. Kẹp giấy/Hành khách NotIdentifiedByImageMagickError:
- 11. Kẹp giấy - đổi tên file trước khi lưu
- 12. Làm cách nào để đặt cơ chế lưu trữ của kẹp giấy dựa trên môi trường Rails hiện tại?
- 13. Kẹp giấy, tệp tải lên lớn và AWS
- 14. Nén tất cả các tệp đính kèm Kẹp giấy được lưu trữ trên S3
- 15. Cách thu nhỏ một trang nhiều pdf với kẹp giấy
- 16. Tải lên tệp bằng Đường dẫn Activeadmin bằng kẹp giấy
- 17. Cắt xén đơn giản bằng kẹp giấy
- 18. Xóa Tệp đính kèm kẹp giấy trong Activeadmin
- 19. Cách sử dụng Kẹp giấy không có tệp, chỉ với một chuỗi?
- 20. Đường ray Kiểu kẹp giấy đa hình
- 21. Làm cách nào để chỉ đặt chiều rộng cho hình ảnh được tải lên kẹp giấy?
- 22. Cách dễ nhất để thêm thanh tiến trình tải lên tệp (kẹp giấy) Apache/Paperclip/Rails
- 23. Heroku: Chạy imagemagick với kẹp giấy
- 24. Làm cách nào để tải xuống tệp từ URL và lưu tệp trong Rails?
- 25. Kẹp giấy và Amazon S3 cách thực hiện đường dẫn?
- 26. Kẹp giấy cho đường ray: Tôi có thể truy cập vào mô hình không?
- 27. Backbone + Rails 'Kẹp giấy' Async ơn
- 28. Kẹp giấy: Cách lưu trữ ảnh trong bảng điều khiển Rails?
- 29. Tải Kẹp giấy các file như ZIP
- 30. Kẹp giấy + Rails với máy cân bằng tải
Kiểm tra câu trả lời của tôi [ở đây] (http://stackoverflow.com/questions/25467130/rails-4-and-paperclip-stop-the-original-style-file-upload-to -opy-it-from-an/25585186) – laertiades