Localização de posts sobre tópicos com mais de 20 posts

Em um tópico com mais de 20 posts, apenas os primeiros 20 posts são mostrados traduzidos; os outros posts permanecem sem tradução.

  1. Selecione Inglês como idioma da sua interface (Alemão também funciona, então acho que tudo, exceto Chinês, funcionará).
  2. Abra qualquer tópico e certifique-se de que as traduções estejam desativadas.
  3. Abra Discourse-embed-bilibili(在discourse中插入哔哩哔哩视频)
  4. Role para baixo até o último post.
  5. Role de volta para o primeiro post.
  6. Alterne o idioma para Inglês.
  7. Role para baixo.

Esperado: Todos os posts estão em inglês.
Resultado real: Os primeiros 20 posts estão em inglês, mas aqueles carregados ao rolar estão no idioma original.

Isso também funciona em outros tópicos com mais de 20 posts. Escolhi este post como exemplo porque os últimos posts não estão em inglês, então ele pode ser reproduzido com uma interface em inglês. Se você escolher um idioma de interface diferente, poderá reproduzi-lo em um tópico com posts em inglês também.

1 curtida

Demorou um pouco para entender, mas a essência do bug é:

O botão “Mostrar Original” só se aplica à “página” atual de posts e não é respeitado ao carregar a próxima página através da rolagem.

Certo?

Isso desceria até a rota em GET https://meta.discourse.org/t/#{topic.id}/posts.json?post_ids[]=#{posts.id} não respeitando o cookie content-localization-show-original: "true".

Talvez :olhos:

Meu problema era que eu estava lendo o tópico no idioma original. Então usei o alternador, porque não falo chinês. Isso me levou de volta à primeira postagem (não entendo completamente por quê; nem sempre acontece. É por isso que escolhi rolar nas etapas acima).
E então as primeiras 20 postagens estavam em inglês, mas as últimas ainda estavam em chinês.

Acho que, nesse caso, um show_original=false seria o que eu precisava para ver todas as postagens em inglês.

Verifiquei a aba de rede e acho que o problema é que não há uma nova solicitação para essas postagens depois que usei o alternador para ver a tradução:

Sim, isso está correto.

O /posts.json?post_ids atende ao “mostrar original”, mas o problema é devido à loja frontend apenas carregar as postagens existentes. Aqui está uma correção que também aborda o irritante retorno à primeira postagem.

4 curtidas

Isso acabou de ser mesclado. A alteração provavelmente chegará ao meta em cerca de uma hora, então estarei monitorando e fechando se tudo parecer bem.

EDIT: Parece bom - fechando.

1 curtida

Este tópico foi fechado automaticamente após 2 dias. Novas respostas não são mais permitidas.