在我的 Rails 应用程序中,我试图在视图部分模板中显示 XML 文件的内容。我想显示整个 XML 文件的实际标记——标签、正确格式化的缩进等——而不仅仅是文本数据或特定节点。
XML 文件位于另一台服务器上,所以首先我必须获取该文件。到目前为止,这是我的方法,它显示标签但不格式化它们——它只显示在一个完整的行中。
在我的控制器中:
@xml_file_path = 'some file path'
@response = Typhoeus::Request.get(@xml_file_path)
在视图模板中:
<%= render :text => @response.body, :content_type => 'application/xml' %>
这会导致 XML 显示在一行上,如下所示:
<mods:mods><mods:physicalDescription<mods:internetMediaType>image/jpeg</mods:internetMediaType></mods:physicalDescription></mods:mods>
但我希望它通过换行符和缩进等显示给用户,如下所示:
<mods:mods>
<mods:physicalDescription>
<mods:internetMediaType>image/jpeg</mods:internetMediaType>
</mods:physicalDescription>
</mods:mods>
我怎样才能做到这一点?我认为 ' render :text
' 在这里不是正确的方法,但不确定什么会更好。任何建议表示赞赏。我对 Rails 很陌生。
提前致谢!