【问题标题】:Ruby On Rails : create nested ArrayRuby On Rails:创建嵌套数组
【发布时间】:2013-07-30 09:17:24
【问题描述】:

我正在尝试创建一个对象数组,我们将其称为“类别”,并且我希望该数组中的每个对象在其中都有一个名为“items”的数组,因此结果将是这样的:

[category:id=11, name="beer", items[1,2,3,4]]

我试过这段代码:

@category ||= Array.new
@categoryItems ||= Array.new
@venues.categories.enabled.each do |category|
  @category.push(category)
  @categoryItems.push(category.items.enabled)
end

但我不知道如何命名里面的项目,所以我以后可以在 json 中使用它们。我该怎么做?

【问题讨论】:

    标签: ruby-on-rails arrays hashmap


    【解决方案1】:

    您可以尝试创建哈希。

    @category ||= Array.new
    @venues.categories.enabled.each do |category|
      hash = {}
      hash[:category][:id] = category.id
      hash[:category][:name] = category.name
      hash[:category][:items] = category.items.enabled.pluck(:id).join(',')
      @category << hash
    end
    

    【讨论】:

    • 好的,这似乎是合法的.. 但我对此有一点问题.. 现在它给了我错误,因为最后一行(启用了未定义的方法).. 它可能与此问题相关,也可能不相关。 .
    • 可能在模型项目中你还没有启用
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多