【问题标题】:Rails 3 query multi-dimensional arrayRails 3 查询多维数组
【发布时间】:2012-03-15 14:37:08
【问题描述】:

我有一个名为 @venues 的数组,其中包含一个半径内的所有餐厅。每个场地has_manydishes 我想将这些菜的数组插入venue

@venues = Venue.within(radius, :origin => [lat, lng]).order('distance ASC')

@venues.each do |venue|
  dishes = venue.dishes.where("? BETWEEN DATE(served_from) AND DATE(served_until)", Date.today)
  # insert dishes into venue
end

如何将菜肴插入场地,以便我可以访问场地的所有可用菜肴:@venues[i].dishes

【问题讨论】:

    标签: ruby-on-rails ruby arrays ruby-on-rails-3 multidimensional-array


    【解决方案1】:

    Dish 本身上添加范围可能更有意义:

    scope :today, :conditions => ["? BETWEEN DATE(served_from) AND DATE(served_until)", Date.today]
    

    这样,您可以使用@venues[i].dishes.today 访问可用的dishes

    【讨论】:

    • 同意。澄清一下为什么他们正在做的是一个坏主意可能很有用:他们正在改变每个 Venue 实例的状态(通过将菜肴分配给它自己的一个子集)而不打算保存这些更改,因为它们不是实际上是正确的。
    猜你喜欢
    • 2017-06-14
    • 1970-01-01
    • 2013-06-21
    • 1970-01-01
    • 2013-12-15
    • 2015-04-30
    • 1970-01-01
    • 2014-05-04
    • 2013-06-25
    相关资源
    最近更新 更多