3
저는 Ruby 용 빌더 젬을 사용하여 애플리케이션의 리소스에 대한 XML 표현을 생성하고 있습니다. XML 표현에는 항상 동일하게 구조화되는 여러 하위 노드가 있지만 최상위 레벨 노드는 자원의 부울 등록 정보 값에 따라 다른 이름을가집니다. 빌더 노드를 동적으로 생성 할 수있는 방법이 있습니까? (이미이 시도 작동하지 않습니다) 이런 식으로 뭔가 : 그 코드는 노드 <send:ForFlowBased>
을 생성합니다Ruby Builder Gem - 동적으로 노드 이름을 설정합니다.
if resource.attr
top_level_node = :ForFlowBased
else
top_level_node = :ForNonSeamlessOffload
end
builder = Builder::XmlMarkup.new
builder.send(top_level_node). do |top_level_node|
....
end
. 마찬가지로 builder.(top_level_node)
을 호출하면 생성 된 xml은 <call:ForFlowBased>
입니다. 나는 동적으로 빌더에게 XML에 대한 보내기 나 호출을 추가하지 않고 호출하고 싶은 메소드를 보내려한다.
멋진! 나는 이것을 잠시 동안 찾았다! 고마워! – 23tux