Я создаю альбом, который я планирую отображать с помощью масонства и ImgZoom, чтобы посетители могли иметь большее изображение, когда они нажимают на него.undefined method 'to_model' при компоновке миниатюр к исходному изображению
Согласно ImgZoom, чтобы сделать работу трансфокатора, что вам нужно сделать следующее:
<a href="path/to/real/image.png">
<img src="path/to/image's/thumbnail.png class="thumbnail" />
</a>
Так что я сгенерировал загрузчиком, со следующими в нем:
class ImageUploader < CarrierWave::Uploader::Base
include CarrierWave::MiniMagick
storage :file
def store_dir
'portfolio/photos'
end
version :thumb do
process :resize_to_fit => [220, nil]
end
end
Все работает отлично , Я могу назвать обе версии без проблем, но когда я попытаюсь следовать инструкциям ImgZoom, сделав следующее:
<%= @portfolio.photos.each do |p| %>
#This is a nested form inside the portfolio form, so I need to do this to get my images
<%= link_to image_tag p.image.thumb.url, p.image %>
или:
<%= link_to p.image do %>
<%= image_tag p.image.thumb.url, :class => 'thumbnail' %>
<% end %>
Я получаю следующее сообщение об ошибке: undefined method 'to_model' for #<ImageUploader:0x0000000c35f4d8>
Я нашел аналогичный вопрос на переполнение стека, но спрашивающий не было ясно, и ему было предложено попросить другой вопрос на форуме , которого я не смог найти. Я могу индивидуально достигать 'p.image' и 'p.image.thumb.url', но я не могу сделать ссылку от одного к другому, что было бы прекрасно справиться с простым html.
Что я делаю неправильно?
Спасибо заранее
вы пробовали '<% = link_to p.image.url делать%>' ....? –
Это. Это было ЭТО просто. Черт возьми! Не могли бы вы сделать настоящий ответ, чтобы я мог принять его? Большое спасибо! – Jaeger
вы можете принять ответ Саймона. Я рад помочь. –