我有以下路线:
namespace :gallery do
resources :collections, only: [:index, :show] do
resources :albums, only: [:index, :show] do
resources :photos, only: :show
end
end
end
我正在尝试从相册显示页面链接到照片显示页面。我尝试了各种各样的事情,但是我无法让任何帮助者生成正确的链接。
专辑节目:
<div class="container--padded">
<div class="home-intro">
<h1><%= @album.title %></h1>
<div class="grid">
<% @photos.each do |photo| %>
<div class="grid__item grid__item--photo flex-embed flex-embed--1by1">
<div class="flex-embed__item">
<% @dimensions = FastImage.size(photo.source(:small)) %>
<img src="<%= image_path(photo.source(:small)) %>" class="<%= @dimensions[0] > @dimensions[1] ? 'landscape' : 'portrait' %>" />
<%= link_to 'Photo', gallery_collection_album_photo_path(photo) %>
</div>
</div>
<% end %>
</div>
</div>
</div>
我有什么想法可以解决这个问题?
答案 0 :(得分:0)
您需要将所有嵌套对象作为参数传递给url helper,即
gallery_collection_album_photo_path(@collection, @album, photo)
url_for
也应该有效:
url_for([@collection, @album, photo])