6

是否可以为 :joins 指定与 :conditions 类似的参数?

这是一个例子(sql代码无关紧要)

named_scope :threads, {
  :joins => [" LEFT JOIN groups_messages gm ON messages.id=gm.message_id AND gm.group_id IN (?) ",@group_ids_array], 
  :conditions => ["creator_id=? AND messages.id IN (?)", current_user_id, @message_ids_array]
}

在此示例中,用于 :conditions 的参数将被正确插入,但对于 :joins 我会得到一个错误

 Association named '  LEFT JOIN groups_messages gm ON messages.id=gm.message_id and gm.group_id IN (?) ' was not found; perhaps you misspelled it?

什么函数用参数代替:条件?

4

1 回答 1

7

您可以使用ActiveRecord::sanitize_sql_array方法。

ActiveRecord::sanitize_sql_array ['gm.group_id IN (?)', @group_ids_array]
于 2009-10-06T10:38:04.097 回答