2013-03-29 68 views
0

我想從用戶拍攝的圖像的URL並提交在同一頁面 這裏顯示圖像的縮略圖是我如何把URL從用戶如何將用戶網址輸入顯示爲縮略圖?

<%= form_for([@project, @project.uploads.build]) do |f| %> 
<div class="field"> 
    <%= f.label :url %><br /> 
    <%= f.text_field :url %> 
    </div> 
    <div class="actions"> 
    <%= f.submit %> 
    </div> 
<% end %> 

然後我在顯示的URL相同的頁面

<p> 
    <%= upload.url %> | 

    <%= link_to 'Delete', [upload.project, upload], 
      :confirm => 'Are you sure?', 
      :method => :delete %> 
</p> 

但是相反,我想顯示縮略圖..我該怎麼做?

回答

0

image_tag是您正在尋找的Rails方法。 (http://api.rubyonrails.org/classes/ActionView/Helpers/AssetTagHelper.html#method-i-image_tag)。只需使用上傳的網址即可。然後,使用:size選項,或者在圖像標籤上設置一個類,並通過CSS來處理其大小。

該方法當然不會調整實際圖像的尺寸,用戶的瀏覽器將拉下較大的文件,然後在瀏覽器中調整其大小。它消耗與全尺寸版本相同數量的帶寬,因爲它是全尺寸版本。

要對圖像進行後期處理並實際調整大小(真實縮略圖),我推薦使用CarrierWave Gem(https://github.com/jnicklas/carrierwave)。它的文檔非常好,所以我不會在這裏介紹如何使用它。