Направляющие пути загрузки двигателя - PullRequest
1 голос
/ 11 ноября 2011

У меня есть следующий метод, который загружает набор партиалов, который живет в помощнике:

Dir.new(File.join(Rails.root,"app","views", path)).each do |partial|
      concat(render :partial => File.join("/" + path, partial.sub(/^_/, "")))
      if partial.starts_with?('_')
      end
      ""
end

Когда я загружаю edit.html.erb, я включаю помощника, как вы ожидаете, чтобы загрузить все мои части:

<% render_all_in_path "shared/setting_editors" -%>

Когда я монтирую свой Engine, я могу расширить свои контроллеры так, как вы ожидаете, но мой вспомогательный метод, похоже, не работает, когда я включаю свой _partial.html.erb в папку engine views/shared/setting_editors.

Как можно улучшить описанный выше вспомогательный метод, чтобы файлы _partial.html.erb, включенные в смонтированный движок, загружались в мое приложение Rails?

1 Ответ

0 голосов
/ 12 ноября 2011
Dir.glob( File.join( Rails.root, "app", "views", "**", "_*" ) ).each do |partial|
  # this will iterate over all the partials in the app/views/ subdirectories
end
...