【问题标题】:HTML code in Rails YAML-fixturesRails YAML-fixtures 中的 HTML 代码
【发布时间】:2011-03-13 20:50:58
【问题描述】:

嗨, 我有一个“文章”模型,它的内容是 HTML。

我使用 YAML 固定装置创建了一些测试数据,但遇到了以下问题:

正如我所说的“rake db:fixtures:load”,出现以下错误:

ArgumentError: syntax error on line 22, col 0: <li>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</li>

它抱怨的夹具片段如下:

Article_1:
  title: Test Article 1
  content: |
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
    <ul>
       <li>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</li>
       <li>Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.</li>
    </ul>

似乎 HTML 代码有一些不应该出现在 YAML 中的东西......

编写这样的固定装置的正确方法是什么?

【问题讨论】:

    标签: html unit-testing fixtures ruby-on-rails


    【解决方案1】:

    我今天刚刚遇到类似的东西,将 XML 嵌入到一个装置中。您应该能够将 HTML 用双引号括起来,它应该可以工作。使用额外的双引号转义 HTML 中的任何双引号。

    你肯定需要 |不过要处理多行,因为我一开始就错过了,所以谢谢你的提示。

    【讨论】:

      【解决方案2】:

      当我需要在我的夹具中加载一个长 JSON 字符串时,我今天遇到了一个非常相似的错误。

      不幸的是,我无法使用 Yaml 修复它,但改用 CSV 就可以了。也许您可以尝试一下?

      您将把它重命名为articles.csv,而不是articles.yml。请记住,CSV 文件中的第一行是一个标题记录,它需要包含一个逗号分隔的字段名称列表,后面的行可以包含您的数据。

      更多详情请访问http://ar.rubyonrails.org/classes/Fixtures.html,这对我们很有帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-30
        • 1970-01-01
        • 2012-01-17
        • 1970-01-01
        相关资源
        最近更新 更多