我刚刚将cequel从1.10.0更新到了3.2.1,我拥有以下模型:
module Messaging
class ThreadsForUser
include Cequel::Record
include Sunspot::Cequel
self.table_name = :messaging_threads_for_users
key :user_id, :bigint
key :thread_id, :timeuuid, order: :desc
我有以下查询(这在1.1.0中正常工作):
connection.execute(
"DELETE FROM #{table_name} WHERE thread_id = ? AND user_id in (?)",
thread_id, user_ids
)
但是3.2.1我收到了:
ArgumentError: argument for "user_id" must be bigint, [3] given
哪里 user_ids
是一个上面有3的数组。不知道该怎么解决,知道吗?
1条答案
按热度按时间raogr8fs1#
您需要使用如下语法:
在这种情况下,完整列表将由驱动程序替换为
in
,而在你的变体中,你通过了IN
由一个元素组成-这是有效的语法,您只需要传递整数值而不是整数列表。