EDIT: alterei o título do tópico para refletir o problema que descobri, graças às respostas abaixo
Estou tendo um comportamento estranho com os permalinks no meu trabalho de migração.
Meu problema não é o de links internos que não redirecionam. Estou apenas testando isso colando URLs na barra de endereços do meu navegador.
Estes são os dois redirecionamentos que pretendo que ocorram nos meus testes:
esse é um redirecionamento de post, deveria redirecionar para o segundo post assim:
esse é um redirecionamento de tópico, deveria ir para:
Sei que minhas normalizações estão funcionando corretamente. Minha expressão regular é:
/(?:.*)(\/)(?<topicid>\d*.)-(.[^\/#\?]*)(?<parm>\?(\w*)[=](?<start>\d+))?(?:\/)?(\D+(\/)?)?(?<postid>\d+)?(?:\/)?/normalized.\k<topicid>.\k<postid>
E eu as verifico no console do rails:
irb(main):069:0> Permalink.normalize_url('https://community.suitecrm.com/languages/17978-why-two-italian-language-packs#16249')
=> "normalized.17978.16249"
irb(main):068:0> Permalink.normalize_url('https://community.suitecrm.com/languages/17978-why-two-italian-language-packs')
=> "normalized.17978."
Isso é o que eu pretendia. Tenho isso na minha tabela Permalinks:
E é assim que aparece no banco de dados:
Mas quando coloco isso na URL do navegador
ele é redirecionado para
Em vez do que deveria ser
Então eu vejo o primeiro post, ele não rola até o segundo como deveria.
Por que esse hash #16249 está sendo adicionado novamente, se minha normalização o removeu?
Outra maneira de expor essa incongruência (embora de forma um pouco artificial) é tentar os seguintes redirecionamentos a partir da barra de endereços do navegador:
https://community.suitecrm.com/normalized.17978.
correto redireciona para:
Reports disappeared - 💬 General Discussion - SuiteCRM
E Why two Italian language packs? - #2 by roberto - Translation and Language Packs - SuiteCRM
corretamente redireciona para
Reports disappeared - #2 by erevodifosin - 💬 General Discussion - SuiteCRM
Então por que não funciona quando passa pelo processo normal?


