指定格式:使用render_to_string忽略“xml”

时间:2012-01-03 22:12:33

标签: ruby-on-rails ruby-on-rails-3 erb actionview actioncontroller

我有一个需要将视图渲染为字符串的操作。该视图称为index.xml.erb。我试图用render_to_string实现这个:

my_string = render_to_string(layout: false, format: "xml")

render_to_string是呈现index.html.erb的内容并将其分配给my_string。我错过了什么?

注意:我知道我可以这样做:

my_string = render_to_string(:action => "#{self.action_name}.xml.erb")

但我很好奇为什么“格式”选项不适用于render_to_string。

1 个答案:

答案 0 :(得分:23)

这适合我。

render_to_string( :action => "#{self.action_name}", :formats => [:xml] )