Вопрос

Я пишу драгоценный камень, который предоставляет помощникам для просмотров. HTML я хочу вставить через помощник, достаточно сложна, что я предпочел бы написать его в файле _partial.html.erb. Как получить путь к просмотру GEM включать в Load_Path?

Примечание. Единственный драгоценный камень, который я обнаружил, что делает что-то вроде этого, является разработкой. Когда вид не может быть найден, Rails печатает путь нагрузки, который выглядит (на моей машине) выглядит:

Missing partial sortable_nested_set/tree with {:handlers=>[:erb, :rjs, :builder, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]} in view paths "/home/jason/VirtualRestaurant3/app/views", "/home/jason/.rvm/gems/ruby-1.9.2-preview3/gems/devise-1.1.rc0/app/views"

Как разрабатывает это?

Мой драгоценный камень: http://github.com/jrmurad/sortabledestedset.Придумайте GEM: +http: //+github.com/plataformatec/devise.

Это было полезно?

Решение

Если вы поместите каталог «App» в базовом каталоге вашего плагина, Rails добавит приложение / представления на путь просмотра по умолчанию.

.
├── app
│   └── views
│       └── plugin_name
│           └── _my_partial.html.erb

Затем вы можете рендер частично с помощью метода помощника плагина с:

render :partial => "plugin_name/my_partial"

Обратите внимание, что рельсы не делают виды, доступные по умолчанию в тестовой среде плагинов. Чтобы включить их там, добавьте следующее, чтобы проверить / test_helper.rb:

ActionController::Base.prepend_view_path File.dirname(__FILE__) + "/../app/views"
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top