2011-01-28 4 views
6

지금은 같은 태그에 모든 값을 배치 나는 ...레일 - XML에 값을 배치 to_xml하지 태그 속성

def index 
    @burried_treasures = BurriedTreasure.all 
    render :xml => @burried_treasure 
end 

을 그래서 같은 컨트롤러 방법이 있다고 가정

<burried_treasure> 
    <name>Red Beard</name> 
</burried_treasure> 

I 다음과 같은 속성을 사용하고 싶습니다.

<burried_treasure name="Red Beard"> 

이 작업을 수행하는 방법을 아는 사람이 있습니까?

답변

5

당신은

class BurriedTreasure < ActiveRecord::Base 
    def to_xml(options = {}) 
     options[:indent] ||= 2 
     xml = options[:builder] ||= Builder::XmlMarkup.new(:indent => options[:indent]) 
     xml.instruct! unless options[:skip_instruct] 
     xml.buried_treasure('name' => self.name) 
     xml.some_nodes do |some_node| 
      some_node.some_level2_node "some_level_2_node_content" 
     end 
    end 
    end 

그것을 맞았다 http://ap.rubyonrails.org/classes/Builder/XmlMarkup.html

+0

에서 빌더 :: XmlMarkup의 사용에 대한 자세한 정보를 볼 to_xml 방법 모델을 재정의해야합니다, 감사합니다 :) – WoodenKitty