rails 3应用程序的新手xml构建器问题

jpw*_*ynn 1 xml ruby-on-rails

我从来没有在我的rails 3应用程序中使用xml builder,但需要启动.

我们的一个控制器方法由远程系统调用,它只返回xml.

在我们的foo控制器中我们有

  def return_some_data
    @thename = "JOHN DOE" 
      respond_to do |format|
        format.xml
      end
  end
Run Code Online (Sandbox Code Playgroud)

在我们的视图/ foo/return_some_data中.我们有xml.erb

<Response>
  <Name>The name is <%= @thename %></Name>
</Response>
Run Code Online (Sandbox Code Playgroud)

我想使用xml builder而不是手动创建xml并使用erb来处理变量插入.

我认为等效的构建器文件看起来像这样?

xml.Response{
  xml.Name(The name is @thename)
}
Run Code Online (Sandbox Code Playgroud)

我还要重命名该文件return_some_data以及将其放入哪个文件夹?另外,我需要'require'或'include'来开始使用xml builder,还是内置ruby?

Rob*_*Rob 5

视图应该有扩展名.builder eg. views/foo/return_some_data.builder

通过命名它.builder,rails会自动创建一个XmlMarkup实例,你的.builder模板也是纯粹的ruby,不需要

xml.instruct!
xml.Response do
  xml.Name @name
end
Run Code Online (Sandbox Code Playgroud)