【问题标题】:ruby builder: can't generate xml tags like <fu-ba:r>ruby builder:无法生成像 <fu-ba:r> 这样的 xml 标签
【发布时间】:2014-11-07 08:05:25
【问题描述】:

Hy 伙计们 我遇到的问题是我必须使用 builder 在 ruby​​ 中创建一个 xml,在 sinatra 服务器上运行。 Xml 中充满了类似这样的 xml 标签:

<fu-ba:r test="test1" source="h1">
  somthing
</fu-ba:r>

现在我不知道如何让构建器创建像这样的标签(属性没有问题)。 我试过了:

xml.fu-ba:r(......)
xml."fu-ba:r"(.......)
xml. << "fu-ba:r"(......)

每个想法或解决方案都会有很大帮助,谢谢大家

【问题讨论】:

    标签: ruby xml builder


    【解决方案1】:

    Ruby 标识符由字母、十进制数字和 下划线字符,并以字母开头(包括 下划线)。 Ruby 的长度没有限制 标识符。

    由于ruby identifiers 不允许使用特殊字符,因此构建器为此目的提供了一个名为tag! 的方法。

    例如

    x.tag!("fu-ba:r") {
      x.text! "something"
    }
    

    输出

    # <fu-ba:r>
    #   something
    # </fu-ba:r>
    

    【讨论】:

    • 非常感谢 Benji,这正是我要找的东西
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-06
    • 2011-02-17
    • 1970-01-01
    • 1970-01-01
    • 2018-12-29
    • 1970-01-01
    相关资源
    最近更新 更多