ruby-on-rails - Ruby:如何返回数组列包含给定字符串的所有行?

标签 ruby-on-rails ruby database

我正在处理一些市政数据,由于一些市政当局在技术上位于多个县内这一事实使它变得复杂 - 我在数据库中将其作为数组处理,如下所示:

[<Municipality id: 11590, name: "Wisconsin Dells", county: ["Adams", "Columbia", "Juneau", "Sauk"], latitude: nil, longitude: nil, created_at: "2012-06-06 20:05:20", updated_at: "2012-06-06 20:05:20", municipality_type: "City">]

我如何用 Ruby 构造一个调用,它会返回所有 county 包含给定字符串的市镇?

例如,理想情况下,这就是我列出给定县的所有城市的方式。

编辑:我的 Municipality 类中有 serialize :county

最佳答案

class Muni < ActiveRecord::Base
  def self.for_county(county)
    where %Q[county like '%"#{county}"%']
  end
end

或者,更慢,但如果您“只是不想搞乱 SQL”:

def self.for_county(county)
  all.select { |m| m.county.include? county }
end

关于ruby-on-rails - Ruby:如何返回数组列包含给定字符串的所有行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10921691/

相关文章:

数据库最佳实践 - 状态

mysql - 将递增值附加到数据库列

ruby-on-rails - 通过 Ruby on Rails 中的 HTTP header 自定义授权

ruby-on-rails - 如何将特定的 gem 版本设置为默认版本?

ruby-on-rails - 尝试克隆一个旧的 repo 并获取 PGconn、PGresult 和 PGError 常量已被弃用,并将从 1.0 版开始删除

ruby - 预期为 ArgumentError 但得到 NoMethodError

database - odsi和odi的区别

ruby-on-rails - 更改回形针附件上集成测试的路径

ruby-on-rails - 迁移失败无法引用哈希值

ruby-on-rails - rails 3 : Call back for when a certain object is pulled from the database (Mongo Mapper)