我正在尝试对导航栏进行常规查询,以检查是否可以找到在任何字段中包含给定值的记录。
这是我模型中的查询:
def self.basic_search(*keywords)
where("specialties %% ARRAY[:k] or treatments && ARRAY[:k]::varchar[] or
neighborhood = ANY(ARRAY[:k]) or name ~ ANY(ARRAY[:k])", k: keywords)
end
然后在我的控制器中,将keywords.split(' ')
参数传递给该函数。
我在控制器中收到一个TypeError,指出“无法引用数组”。
我将如何进行查询?
我尝试在Active Record and PostgreSQL - Ruby on Rails Guide之后更改数组以匹配ARRAY[:k]::varchar[]
,但似乎不起作用。