Ответ 1
Это может быть одним из решений вашей проблемы: http://apidock.com/rails/ActionController/Base/prepend_view_path
Я использую (первичный) частичный:
<%= render partial: 'shared/page/head' %>
Использует другие (вторичные) частичные:
<head>
<%= render partial: 'shared/page/head/title' %>
<%= render partial: 'shared/page/head/meta' %>
...
<%= render partial: 'shared/page/head/fonts' %>
...
<%= render partial: 'shared/page/head/google_analytics' %>
</head>
Как вы можете видеть, я в настоящее время использую пути относительно app/view
для этих вторичных парциальных чисел, даже если они находятся в том же каталоге, что и первичный частичный.
Я пробовал использовать относительные пути:
<%= render partial: 'title' %>
или
<%= render partial: './title' %>
Но не работает.
Есть ли способ частичных разрешений частичного решения, которые он использует, используя относительный путь?
Это может быть одним из решений вашей проблемы: http://apidock.com/rails/ActionController/Base/prepend_view_path
Я пишу вспомогательный метод для его реализации. Звучит как работа отлично.
def render_relative_partial(relative_path, option={})
caller_path = caller[0].split(".")[0].split("/")[0..-2].join("/")
path = caller_path.gsub("#{Rails.root.to_s}/app/views/","") + "/#{relative_path}"
option[:partial] = path
render option
end