Вопрос

Можно ли указать параметры для :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?

какая функция заменяет параметры на :conditions?

Это было полезно?

Решение

Вы можете использовать ActiveRecord::sanitize_sql_array метод.

ActiveRecord::sanitize_sql_array ['gm.group_id IN (?)', @group_ids_array]
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top