Находите записи с более чем одной ассоциацией ActiveRecord HABTM Association

У меня есть две модели, к которым присоединяется соединительный стол Has и Belongs To Many. Назовем эти модели User и Event. У большинства пользователей 0 событий, а у немногих - одно или несколько. Я хочу сделать что-то вроде:

User.find (: all,: joins =>: events,: conditions => ["'Что-то, что считает события'>?"], 0)

Проблема в том, что я не уверен, как выбирать только пользователей, у которых есть одно или несколько связанных событий.

ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
4
0
961
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я нашел ответ:

User.find(:all, :joins => :events, :select => 'DISTINCT `users`.*')

По сути, users. * Ограничивает набор результатов только таблицей пользователей, а ключевое слово DISTINCT гарантирует, что каждый пользователь возвращается только один раз.

Это не решает проблему для случая, когда вы хотите получить более N результатов, а не только 1. Может ли кто-нибудь предложить способ AR, кроме простого SQL?

Asaf Bartov 19.01.2009 02:44

Другие вопросы по теме