rails 3.1 render_to_string возвращает пустую строку - PullRequest
5 голосов
/ 01 декабря 2011

из метода контроллера, я пытаюсь захватить вывод рендеринга шаблона из другого контроллера.

файл представления находится здесь:

path/to/show.html.erb

в моем контроллере у меня есть:

def create
  html_string = render_to_string :template => 'path/to/show'
  raise 'html string is empty!' if html_string.empty?
  # do some other stuff
end

файл представления очень прост, просто содержит текст 'foo'.

Я не получаю никакой ошибки о том, что rails не может найти файл show.html.erb, но html_string пуст и возникает ошибка.

Такое поведение наблюдается при запуске метода create через тест контроллера rspec.я еще не пробовал код через сервер rails.

кто-нибудь видит что-то, чего мне здесь не хватает?

Ответы [ 2 ]

15 голосов
/ 03 декабря 2011

это происходит из-за того, что в спецификации моего контроллера отсутствует важная строка:

render_views
0 голосов
/ 03 марта 2014

Это должно работать

describe UsersController do
 integrate_views
...