Pergunta

Experimentando a gem do mailboxer e nas visualizações consigo referenciar o avatar do remetente no show de mensagens e funciona perfeitamente, mas na visualização de conversa da caixa de entrada recebo um undefined local variable or method `message' com o mesmo código.Fiz vários ajustes no código, mas não consigo encontrar a linha correta que exibirá o avatar do remetente.

Visualização da caixa de entrada de conversas:

<%= content_tag_for(:li, conversation) do |conversation| %>
    <%= link_to conversation.subject, conversation%> - <%= conversation.updated_at.strftime("%B %-d, %Y %l:%M%P") %>
    | From: <% conversation.participants.each do |participant| %>
     <% if participant != current_user %>
      <%= link_to participant.username, participant %>  
     <% end %>
    <% end %>
    <%= image_tag message.sender.avatar.image_url(:avatar) %>
|
    <% if conversation.is_completely_trashed?(current_user)%>
      <%= link_to 'Untrash', [:untrash, conversation], method: :post%>
    <%else%>
      <%= link_to 'Move to trash', [:trash, conversation], method: :post%>

<% end %>
<% end %>

Visualização de mensagens:

<%= conversation.subject %>

From:
<% conversation.participants.each do |participant| %>
 <% if participant != current_user %>
  <%= link_to participant.username, participant %>
 <% end %>
<% end %>
<%= content_tag_for(:li, conversation.receipts_for(current_user)) do |receipt| %>
 <% message = receipt.message %>
 From: <%= message.sender.username %>
<%= image_tag message.sender.avatar.image_url(:avatar) %>

 <%= simple_format h message.body %>

 Sent <%= conversation.updated_at.strftime("%a, %m/%e/%Y %I:%M %p") %>

<% end %>

<%= render 'messages/form', conversation: conversation %>
Foi útil?

Solução

Defina o valor de message variável na visualização Caixa de entrada de conversa, como você fez na visualização Mensagem

<% message = receipt.message %> ## In Message View

message a variável não está definida na visualização Conversa, esse é o motivo do erro.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top