Je reçois cette sortie. le nombre affiché en sortie est post.user.id
.
La bulle devrait être commutée d'avant en arrière s'il s'agissait d'un identifiant différent.
Mais il juge que c'est la même personne même si ce n'est pas le cas.
Pourquoi?Pourquoi ma vue avec if ne fonctionnera pas correctement?
Courant de sortie
2 Good, you? > Person B
1 How have you been? > person A
2 What's up? > person B
Person A < Hello!!!! 1
Je n'étais pas cette sortie
2 Good, you? > Person B
Person A < How have you been? 1
2 What's up? > person B
Person A < Hello!!!! 1
Voir
<% who = "" %>
<% @posts.each do |post| %>
<tr id="<%= dom_post_id(post) %>">
<% if post.user.id == who %>
<td><%= post.user.nickname if post.user %></td>
<td><div class="bubble me"><%= post.body %></div></td>
<td><%= post.user.id %></td>
<% else %>
<td><%= post.user.id %></td>
<td><div class="bubble you"><%= post.body %></div></td>
<td><%= post.user.nickname if post.user %></td>
<% end %>
</tr>
<% who = post.user.id %>
<% end %>
Je pense que c'est peut-être parce que vous définissez 'who = post.user.id' à la fin de la boucle. Cela définit 'who' au propriétaire du message en cours, mais le message suivant est l'autre utilisateur. Donc, l'instruction if échoue et passe dans le bloc else. – jonhopkins
Je suis d'accord mais je ne comprends pas pourquoi la dernière sortie affiche la personne A dans la première colonne – Wasi
Oui, je suis perdu sur cela aussi ... – jonhopkins