У меня есть два ресурса Category
и Organization
в моем приложении Rails 4. Я борюсь с рендерингом частичных файлов в сочетании с локальными переменными.
У меня есть файл app/views/categories/_category.html.erb
:
<li>link_to category.name, category</li>
В app/views/categories/show.html.erb
я могу визуализировать этот фрагмент, используя
<%= render @categories %>
Чтобы передать локальную переменную, чтобы выделить текущую категорию в списке полужирным шрифтом, я могу изменить вызов метода на
<%= render partial: "category", collection: @categories, as: :category, locals: {active_category: @category} %>
Все идет нормально! Код делает то, что я от него ожидаю.
Но я сталкиваюсь с проблемами, когда хочу сделать то же самое для моей организации show-view в файле app/views/organizations/show.html.erb
. Исходный вызов рендеринга без каких-либо локальных переменных работает нормально, т.е. render @categories
. Однако второй вызов дает мне ошибку
Template is missing
Missing partial organizations/_category, application/_category with {
:locale=>[:en],
:formats=>[:html],
:variants=>[],
:handlers=>[:erb, :builder, :raw, :ruby, :coffee]
}.
Searched in:
* "/home/snail/.rvm/gems/ruby-2.1.2/gems/web-console-2.0.0.beta4/lib/action_dispatch/templates"
* "/home/snail/work/PROJECTNAME/app/views"
* "/home/snail/.rvm/gems/ruby-2.1.2/gems/web-console-2.0.0.beta4/app/views"
* "/home/snail/.rvm/gems/ruby-2.1.2/gems/devise-3.4.0/app/views"
Почему это так и как это исправить?