如何创建基本上这样说的范围:
scope :filtered, where('status != one string, another string, yet another, yep, even more')
所以基本上说“状态不等于以下任何字符串。”
字符串列表会随着时间的推移而扩展。
注意,我正在使用PostgreSQL。
答案 0 :(得分:0)
试试这个:(未经测试)
scope :filtered, where(["status <> ALL ( ARRAY[?, ?] )", 'string_1', 'string_2'])
答案 1 :(得分:0)
您可以使用:
scope :filtered, where(["status NOT IN (?)", ["string1", "string2", "string3"]])