【问题标题】:How to insert dynamically some attributes in a XML tag with Ruby Builder?如何使用 Ruby Builder 在 XML 标记中动态插入一些属性?
【发布时间】:2014-02-08 15:09:13
【问题描述】:

我正在使用 Ruby Builder (http://builder.rubyforge.org/) 从数据库动态生成 XML 文件。

要添加名称在变量中的标签,我发现了这个: xml.tag!(@myTagName)

如何在这个标签中动态插入属性列表?

  • 我不知道从数据库中动态加载的属性的名称
  • 我需要创建一个循环,因为我不知道要插入多少个属性。

谢谢。

【问题讨论】:

    标签: ruby xml builder


    【解决方案1】:

    我认为做你需要的事情应该不难。每当您添加标签时,您都可以传递一个可选的哈希值,该哈希值将成为标签的属性。例如,如果你这样做:

      builder = Builder::XmlMarkup.new
      xml = builder.person(name: "foo", age: 0 ) 
    

    然后你会得到<person name='foo' age='0'/>

    因此,如果您以类似的方式将动态属性构建为哈希,则可以使用 #tag! 方法,如下所示:

    xml = builder.tag!(tag_name, attributes_hash)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多