Tôi đã tìm kiếm trên web cho câu hỏi của mình và không thể tìm thấy người trả lời rõ ràng cho bất kỳ ví dụ nào. Về cơ bản, tôi muốn sử dụng sorl và muốn thay đổi kích thước hình ảnh nguồn trong suốt thời gian tiết kiệm Model để thay đổi kích thước xuống kích thước 640x480, để tôi không lưu trữ các tệp 2.5 MB gốc của người dùng trên đĩa. Sau đó, tôi sẽ sử dụng templatetags để tạo hình thu nhỏ thông thường từ nguồn của tôi như được ghi trong sorl.Làm thế nào để thay đổi kích cỡ nguồn với hình thu nhỏ sorl?
Tôi đã gặp vài nguồn tham khảo sử dụng trường mô hình Hình thu nhỏ được cho là có sẵn trong sorl.thumbnail.fields. Xem liên kết here. Tuy nhiên, trong bản sao sorl cập nhật của tôi từ thân cây tôi không thấy bất kỳ ThumbnailField hoặc ImageWithThumbnailsField. Nỗ lực của tôi để nhập nó trong mô hình không phù hợp. Tôi thấy những tài liệu tham khảo này là cũ mặc dù và tự hỏi liệu tôi có thể đạt được cùng với sorl up-to-date.
Mặt khác, tài liệu sorl chỉ cho thấy ImageField từ sorl.thumbnail (xem here) mà không có bất kỳ đối số kích thước nào để kiểm soát thay đổi kích thước nguồn.
BTW, tôi thấy chức năng này có sẵn với easy_thumbnail có tham số đầu vào source_resize.
Mọi trợ giúp sẽ được đánh giá cao!
TÓM TẮT
tôi chấp nhận câu trả lời dưới đây, tuy nhiên tôi cảm thấy sự ủng hộ sorl tự nhiên đối với trường hợp sử dụng này có thể rất hữu ích - ví dụ: thêm resize_source param để ImageField sorl để cho phép thay đổi kích thước hình ảnh nguồn. Dưới đây là hai yếu tố lý do tại sao điều này có thể hữu ích trong trường:
Không lưu trữ hình ảnh gốc lớn của người dùng nếu ứng dụng của bạn không cần. Tiết kiệm dung lượng đĩa.
Không dành thêm CPU để thay đổi kích thước hình thu nhỏ từ các hình ảnh nguồn khổng lồ đó nếu bạn không có lý do cụ thể về chất lượng cao. Để tránh điều này có thể viết các thẻ lồng nhau trong các mẫu để thu nhỏ từ hình ảnh kích thước nhỏ hơn nhưng nó có thể trở nên khó chịu rất sớm.
để bạn muốn người dùng tải lên hình ảnh được thay đổi kích thước thành chiều rộng và chiều cao có thể quản lý được __before__ áp dụng bất kỳ cây thu nhỏ nào? –
Có, về cơ bản tôi muốn giữ cho các tập tin nguồn trên đĩa luôn luôn để phù hợp với hộp 640x480. – user1039384
Tôi cảm thấy get_thumbnail sẽ giúp tôi làm điều đó - [ví dụ ở đây] (http://thumbnail.sorl.net/examples.html#model-examples). Tuy nhiên, tôi muốn ai đó xác nhận đây là trường hợp duy nhất cũng như đề xuất cách tốt nhất để đạt được điều này trong quá trình lưu ModelForm. Tôi có nên sử dụng ví dụ trước khi tạo tín hiệu hoặc tương tự để đạt được điều này? – user1039384