rails render_to_string выдаёт ошибки с частичным представлением - PullRequest
4 голосов
/ 16 августа 2011

Я получаю ActionView::MissingTemplate ошибку при использовании метода render_to_string с частичным представлением под кодом

 bizz = render_to_string(:partial => "biz_new",:layout => false)

Несмотря на то, что я явно указал :layout => false, я всегда получаю ошибку MissingTemplate.

Но render_to_string с обычными представлениями прекрасно работает в том же проекте. в чем может быть причина?

ниже трассировки стека

ActionView :: MissingTemplate (Отсутствует частичный бизнес / biz_new с {: handlers => [: erb,: rjs,: builder,: rhtml,: rxml],: format => [: text, " / "],: locale => [: en,: en]} в путях просмотра "/ Главная / Рамеш / работы / ххх / приложение / просмотров", "/ Главная / Рамеш / работ / ххх / поставщик / плагины / asset_packager / приложение / виды"):

Ответы [ 4 ]

10 голосов
/ 01 февраля 2013

Попробуйте

 render_to_string("_biz_new", :formats => [:html], :layout => false, :locals => {:biz => @biz})

render_to_string требуется начальное подчеркивание и расширение .html.

2 голосов
/ 05 июня 2013

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

render_to_string(:partial => "folder_name/_partial_name", :formats => [:html], :layout => false, :locals => {:a_needed_argument_for_the_partial => @arg})
2 голосов
/ 16 августа 2011

Похоже, что rails ожидает, что файл будет в формате txt. Как называется файл? Попробуйте назвать это:

_biz_new.txt.erb 

-или-

businesses/_biz_new.txt.erb
0 голосов
/ 22 мая 2013

Была похожая проблема.

Я нашел решение:

render_to_string(model, :formats => [:html])

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...