Я пытаюсь создать представление с ссылкой для загрузки, чтобы загрузить источник html?
Рельсы; сохранить отображаемое содержимое html представления в файл
Ответ 1
Решение@Peter работало для меня. Вот пример кода:
Вид: <%= link_to 'download this page', object_path(@object, :download => true) %>
Контроллер:
def show
# ...
if params[:download]
send_data(render_to_string, :filename => "object.html", :type => "text/html")
else
# render normally
end
end
Ответ 2
Вы можете использовать render_to_string вместо рендеринга, который предоставит вам страницу, а затем для ее загрузки используйте send_data.
Подробнее о том, как сделать здесь строку, и больше на send_data здесь.