[String não pode ser coagido em Integer] quando eu chamo a API lastest.json

Quando eu chamo latest.json?page=0&per_page=10&foo=bar

     # TypeError:
     #   String can't be coerced into Integer
     #   ./lib/topic_query.rb:729:in `*'`

https://github.dev/discourse/discourse/blob/0832cad803bb429a49595eab822a7c77dfa2088b/lib/topic_query.rb#L732-L737
Eu acho que pode ser resolvido por:

if options[:page]
  offset = options[:page].to_i * options[:per_page].to_i
  result = result.offset(offset) if offset > 0
end

Este é um pedido de funcionalidade, per_page não faz parte da nossa API (não é usado pelo cliente). Isso não resolveria totalmente o problema, pois per_page precisaria vir com um limite superior, digamos, um máximo de 100-200.

Existe um motivo específico pelo qual você está procurando substituir os tamanhos de página?

2 curtidas

Sim, temos uma página de cliente para obter os tópicos com fluxo em cascata.
Com certeza, acho que este é um pedido de recurso.
Podemos usar o per_page padrão e remover a consulta per_page.

1 curtida