2015-08-12 3 views
2
# routes.rb 
resources :topics do 
    resources :bookmarks, except: [:index] 
end 

файлов представлений для моей модели закладки жить в app/views/topics/bookmarks:Rails: оказание частичного для вложенного ресурса

enter image description here

оказывает неполную изнутри views/topics/_topic.html.erb закладку:

... 
<% if topic.bookmarks.count > 0 %> 
    <% topic.bookmarks.each do |bookmark| %> 
    <%= render partial: 'topics/bookmarks/bookmark', locals: { topic: topic, bookmark: bookmark } %> 
    <% end %> 
<% end %> 
... 

Мои проблемы в том, что я получаю сообщение об ошибке «Ошибка шаблона» при попытке выполнить частичную закладку. Является ли путь, по которому я перехожу на render partial:? Я также пробовал render partial: 'bookmarks/bookmark.

Missing template bookmarks/edit, application/edit with {:locale=>[:en], :formats=>[:html], :variants=>[], 
:handlers=>[:erb, :builder, :raw, :ruby, :coffee, :jbuilder]}. 
Searched in: * "/Users/..../dev/.../.../code/.../app/views" * 
"/Users/.../.rvm/gems/ruby-2.2.1/gems/devise-3.5.1/app/views" 

Вот полный трассировки стека: https://goo.gl/wd3oqQ

+1

показать полный стек ошибок .. это [должно работать] (http://stackoverflow.com/questions/6880044/partials-grouped-in-sub-folder) –

+0

Спасибо @ArupRakshit - добавлен стек. – RobertJoseph

+0

Нет, это еще не полный. Вы должны указать из создания запроса в стек ошибок –

ответ

1

Я думаю, что ваш контроллер должен следовать той же структуры, что вы хотите использовать в папке Views, так что ваш контроллер закладок должен быть определен следующим образом:

class Topics::BookmarksController < ApplicationController 

И его следует поместить в папку/контроллеры/темы/папку.

Вы можете увидеть что-то связанное с этим в Rails guide

Смежные вопросы