Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

O método CASE WHEN da consulta Rails Advance não está funcionando


de acordo com a consulta, seu cenário é escolher as mensagens em que user_one é o usuário atual ou user_two é o usuário atual. então, em vez de uma consulta complexa, o que você pode simplesmente fazer é isso
Message.where("messages.user_one = ? OR messages.user_two =?", current_user, current_user).order("m_id ASC").limit(20)

agora para adicionar detalhes a ele para o usuário. você pode percorrer as mensagens em exibição e buscar o usuário para cada mensagem e exibi-la. ou você pode fazer um array de hashes e devolvê-lo à visão.