1

我正在尝试通过数据库种子将大约 10K 的 XML 节点作为记录导入我的 Rails DB。这是我导入 XML 代码的代码:

doc = Nokogiri::XML(File.read("./db/seed/recipes.xml"))

doc.xpath('//Item').each do |i|
  Recipe.find_or_create_by_title(title: i.xpath('title').inner_text)
end

和示例 XML 数据:

<Item>
  <title>Fried Eggs and Collard Greens Over Polenta</title>
</Item>

然而,当我尝试播种时,它只会播种第一个节点(即使有 15k)。我是一个完全的 XML 菜鸟。关于为什么会发生这种情况的任何想法?

4

1 回答 1

2

XML 文档必须包含一个元素,该元素是所有其他元素的父元素。例如,

<Items>
  <Item>
    <title>Fried Eggs and Collard Greens Over Polenta</title>
  </Item>
  <Item>
    <title>Fried Eggs and Collard Greens Over Polenta</title>
  </Item>
</Items>
于 2013-02-09T14:57:00.290 回答