我想为每个用户显示正在进行的对话列表。所以他们只需点击它并显示他们想要的对话。我很难找到如何建立这个链接,因为邮箱中的对话对象没有 id。
这个 id 好像是存储在通知对象中的,所以我尝试了这个选项。
此代码来自对话索引视图
<%all_conv = current_user.mailbox.conversations%>
<%all_conv.each do |participant|%>
<div class="ligne_conversation">
<ul>
<a href="conversations/<%=@conversation_id%>">
<li>
<%=image_tag participant.messages.last.sender.avatar.url(:thumb) %>
<%=participant.messages.last.sender.name%>
<%=participant.messages.last.body%>
</li>
</a>
</ul></div>
@conversation_id 实例变量在我的对话控制器中定义
def index
if current_user.mailbox.conversations.any?
notification = Notification.find_by!(params[:id])
@conversation_id = notification.conversation_id
end
end
它不起作用:所有链接都指向 id = 1 的对话。