podle dotazu je váš scénář vybrat ty zprávy, kde buď user_one je aktuální uživatel, nebo user_two je aktuální uživatel. takže spíše než složitý dotaz můžete jednoduše udělat toto
Message.where("messages.user_one = ? OR messages.user_two =?", current_user, current_user).order("m_id ASC").limit(20)
nyní k tomu přidat podrobnosti pro uživatele. můžete buď procházet zobrazené zprávy a načíst uživatele pro každou zprávu a zobrazit ji. nebo můžete vytvořit pole hashů a vrátit je do zobrazení.