ユーザーモデルとメッセージモデルがあります。私のユーザーhas_manyメッセージと私のメッセージbelongs_touser。
私のメッセージモデルでは、属性:content、:user_id、:to_idがあります。
:user_idは外部キーとして機能し、「送信者」と見なすこともできますが、:to_idは「受信者」と見なすこともできます。
私のメッセージインデックステンプレートでは、すべてのメッセージを表示しようとすると、次のようなことをします...
<%= link_to message_item.user.name, message_item.user %>
その行は、受信したメッセージを表示するときにうまく機能します(im:to_idと:user_idは、誰がメッセージを送信したかを示しています)
ただし、「送信済み」カテゴリの下にメッセージを一覧表示する場合、上記のコード行を実行すると、:to_idではなく常に私の名前が表示されます(im:user_idのため)。
理想的には私は次のようなものが欲しいでしょう
<%= message_item.to_id %>
私の送信したカテゴリ。:to_idカテゴリに記載されているユーザーオブジェクトを取得する方法はありますか?message_item.to_idはユーザーオブジェクトではなく整数を返すため、message_item.to_id.nameのようなものは機能しません。それを取得する方法はありますか?
送信者を表示してリンクしようとしたときに、失敗した試みは次のとおりです
<% if current_user == message_item.user %>
<%= message_item.to_id %>
<% else %>
<%= link_to message_item.user.name, message_item.user %>
<% end %>
ありがとう