проблема загрузки фото ruby ​​on rails - PullRequest
0 голосов
/ 28 марта 2010

Привет

рельсы версия 2.3.5

Я изучаю рельсы и сталкиваюсь с проблемой.

Я делаю несколько вложенных форм из обучающих программ Railscasts. Я изменил текстовую область в поле данных для загрузки фотографий, и все работает.

Теперь мне нужно отобразить загруженные картинки, и я просто не могу этого сделать. Я перепробовал все, что мог найти в сети, но ничего не получалось.

ПРОБЛЕМА

У меня есть контроллер Article, который обрабатывает статью CRUD. внутри новой формы статьи есть вложенная форма для загрузки изображений.

контроллер статьи

  def code_image 
      @image_data = Photo.find(params[:id]) 
      @image = @image_data.binary_data 
      send_data(@image, :type => @image_data.content_type,
                        :filename => @image_data.filename,
                        :disposition => 'inline') 
  end

фотомодель

def image_file=(input_data)
self.filename = input_data.original_filename 
self.content_type = input_data.content_type.chomp 
self.binary_data = input_data.read 
end 

Статьи / show.html.erb

<%=h @article.title %>
<%=h @article.body %>
<% for photos in @article.photos %>
<%= image_tag(url_for({:action => 'code_image', 
:id => @article.photos.id})) -%>
<% end %>

article / _formnew.html.erb

 <% form_for (:article, @article,
:url => {:action=>'create'}, :html=>        
{:multipart=>true}) do |f| %>
<%= f.label :title %><br />
<%= f.text_field :title %><br /><br />

<%= f.label :body %><br />
<%= f.text_area :body, :style => 'width: 600px;' %><br /><br />

<% f.fields_for :photos do |builder|%>

<%= builder.label :content, "Photo"%><br />
<%= builder.file_field :image_file %><br />

<% end %>
<br />
<%= f.submit "Create" %>

Спасибо

1 Ответ

0 голосов
/ 28 января 2011

Старый вопрос, я знаю, но если кто-то наткнется на него, эта страница помогла мне: http://sleekd.com/general/adding-multiple-images-to-a-rails-model-with-paperclip/

Кроме того, для отображения изображения вы можете просто использовать:

image_tag [model].[paperclip_attachment].url

например: image_tag trip_image.photo.url

...