Я работаю над чат-приложением, встроенным в Rails. Для того, чтобы показать список последних чатов я это делаю:Выбор записей на основании того, что определенные записи не существуют
chats = Chat.where(user_to_id: params[:user_id]).select(:user_from_id).distinct
Что это делает тянет user_from_id из таблицы чатов, где user_to_id является текущим пользователем.
Проблема в том, что в этом случае будут отображаться чаты, в которых пользователь, с которым разговаривал этот человек, ответил.
Мне нужно изменить этот запрос или написать новый запрос, который также выводит записи чата, даже если нет ответа от другого человека. Любые мысли здесь?
Как ответ чата указан в таблице? Возможно, вы могли бы перефразировать это более общим образом, например. «Я хочу получить записи, где user_from_id NULL» – zetetic
Возможно, вы также ищете записи, в которых пользователь user_from_id является текущим пользователем? –