Dwa*_*fer 2 xml format variables ruby-on-rails render
典型用法是:
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @users }
end
Run Code Online (Sandbox Code Playgroud)
现在我想传递一个名为"teststring"的字符串.
我见过参考使用
:local => {:users => @users, :another => @another}
Run Code Online (Sandbox Code Playgroud)
但我不知道如何将两者合并在一起.我只是没有看到所有的东西.没有太多文档来真正解释:该行中的xml.我不知道我是否可以使用:teststring => teststring处理字符串?
最后,如果我有多个变量,我如何在index.html.erb中处理它们?它们是否从render命令以相同的名称传递?
谢谢.
Jon*_*ier 11
如果要呈现自定义XML,则需要index.xml.erb在控制器的相应视图目录中创建文件.它就像您使用的任何HTML模板一样,然后:
app/controllers/home_controller.rb:
def index
@users = ...
@another = "Hello world!"
# this `respond_to` block isn't necessary in this case -
# Rails will detect the index.xml.erb file and render it
# automatically for requests for XML
respond_to do |format|
format.html # index.html.erb
format.xml # index.xml.erb
end
end
Run Code Online (Sandbox Code Playgroud)
app/views/home/index.xml.erb:
<?xml version="1.0" encoding="UTF-8"?>
<document>
<%= @users.to_xml # serialize the @users variable %>
<extra_string><%= @another %></extra_string>
</document>
Run Code Online (Sandbox Code Playgroud)
(你可以在这里阅读有关ActiveRecord的to_xml方法.)
| 归档时间: |
|
| 查看次数: |
11878 次 |
| 最近记录: |