2012-03-30 22 views
18

Tôi đang cố gắng sử dụng mã này trong uploader tôiKhông xác định Phương pháp Scale Trong CarrierWave

version :thumb do 
    process :scale => [50, 50] 
    end 

và tôi nhận được một lỗi nói

undefined method `scale' for #<#<Class:0x235b680>:0x0fb4c8> 

Tôi đang sử dụng Carrierwave với MiniMagick. Làm thế nào tôi có thể sửa lỗi này?

+1

bạn tìm thấy giải pháp? gặp vấn đề tương tự –

Trả lời

35

Thay vì gọi cuộc gọi quy mô resize_to_fit

process :resize_to_fit => [50, 50] 

hoặc resize_to_fill nếu bạn không muốn giữ tỉ lệ

EDIT

My xấu, cả resize_to_fit và resize_to_fill đang giữ tỷ lệ khung hình.

Sự khác biệt là resize_to_fit sẽ giữ nguyên toàn bộ hình ảnh trong giới hạn nhất định và resize_to_fill sẽ lấp đầy toàn bộ khu vực nhất định để có thể cắt hình ảnh của bạn khi cần.

+0

Điều gì xảy ra nếu bạn không muốn giữ nguyên tỉ lệ khung hình? – John

+2

như tôi đã viết "resize_to_fill" –

+8

Tôi cũng có 'gem install rmagick' và' include CarrierWave :: RMagick' trong lớp người tải lên của tôi. –

2

Phương pháp scale là một ví dụ (tạo ra bởi carrierwave trong tải lên), bạn cần phải sử dụng RMagic (hoặc minimagick) chức năng (trong đá quý riêng của họ, kể từ phiên bản nhỏ hơn của họ được bao gồm trong carrierwave) nếu bạn muốn mở rộng quy mô và do , không giữ nguyên tỷ lệ của hình ảnh gốc

Các vấn đề liên quan