Após a atualização da versão, descobri que não conseguia carregar o cartão do usuário clicando na avatar do usuário, e ao entrar nas configurações de informações pessoais, apareceu uma mensagem dizendo que a página não foi encontrada.
Eu atualizei ontem e os Cartões de Usuário estão carregando bem para mim.
Verifique o modo de segurança. Se estiver tudo ok, talvez você tenha um problema em um de seus Temas ou Componentes de Tema?
Você poderia fornecer quaisquer erros do console, por favor.
Estou no modo de segurança e ainda não consigo carregar, aqui está a minha informação de log
Falha ao tratar exceção na middleware do aplicativo de exceções : ActiveRecord::StatementInvalid : PG::UndefinedTable : ERRO: relação "gamification_leaderboard_cache_1_all_time" não existe LINHA 1: ...p.t
ActiveRecord::StatementInvalid (PG::UndefinedTable : ERRO: relação "gamification_leaderboard_cache_1_all_time" não existe LINHA 1: ...p.total_score, p.position FROM "users" INNER JOIN gamificati.
Isso pode ter alguma relação, mas eu estava me referindo aos registros do navegador, você pode compartilhar esses?
Ou seja, o console do navegador. (geralmente aberto com F12)
topic-creator-avatar.hbr:1 [THEME 300 'Resumo do tema mais recente'] Erro de compilação: extensão de arquivo 'hbr' desconhecida (discourse/connectors/topic-list-before-columns/topic-creator-avatar.hbr)
(Anônimo) @ topic-creator-avatar.hbr:1
[Novo] Use o Copilot no Edge para explicar o erro do console: Clique
para explicar o erro.
Saiba mais
Não mostrar novamente
composer-action-title.js:62 ℹ️ Discourse v3.5.0.beta5-dev — https://github.com/discourse/discourse/commits/7820dd2b8f — Ember v5.12.0
post-placeholder.js:53 [PLUGIN discourse-chain-topics] Aviso de depreciação: Definir classes de conector via registerConnectorClass está obsoleto. Consulte https://meta.discourse.org/t/32727 para padrões mais modernos. [id de depreciação: discourse.register-connector-class-legacy]
o @ post-placeholder.js:53
p @ topic-link.js:12
registerConnectorClass @ group.js:15
(Anônimo) @ topic-custom-field-initializer.js:32
e1 @ group.js:15
initialize @ topic-custom-field-initializer.js:13
(Anônimo) @ composer-action-title.js:62
(Anônimo) @ item.js:166
e.each @ form-template-validation.js:54
e.walk @ form-template-validation.js:54
e.each @ form-template-validation.js:54
e.topsort @ form-template-validation.js:54
_runInitializer @ item.js:166
runInstanceInitializers @ item.js:166
_bootSync @ composer-action-title.js:62
didBecomeReady @ index.js:93
invoke @ client-error-handler.js:88
flush @ client-error-handler.js:88
flush @ client-error-handler.js:88
_end @ client-error-handler.js:88
(Anônimo) @ client-error-handler.js:88
Promise.then
(Anônimo) @ client-error-handler.js:88
flush @ bookmark.js:114
_scheduleAutorun @ client-error-handler.js:88
_ensureInstance @ client-error-handler.js:88
schedule @ client-error-handler.js:88
f @ bookmark.js:114
waitForDOMReady @ index.js:93
init @ index.js:93
_ @ caret-position.js:86
create @ caret-position.js:86
(Anônimo) @ start-app.js:4
(Anônimo) @ discourse-boot.js:13
(Anônimo) @ discourse-boot.js:1
post-placeholder.js:53 [PLUGIN discourse-chain-topics] Aviso de depreciação: Definir classes de conector via registerConnectorClass está obsoleto. Consulte https://meta.discourse.org/t/32727 para padrões mais modernos. [id de depreciação: discourse.register-connector-class-legacy]
o @ post-placeholder.js:53
p @ topic-link.js:12
registerConnectorClass @ group.js:15
(Anônimo) @ topic-custom-field-initializer.js:83
e1 @ group.js:15
initialize @ topic-custom-field-initializer.js:13
(Anônimo) @ composer-action-title.js:62
(Anônimo) @ item.js:166
e.each @ form-template-validation.js:54
e.walk @ form-template-validation.js:54
e.each @ form-template-validation.js:54
e.topsort @ form-template-validation.js:54
_runInitializer @ item.js:166
runInstanceInitializers @ item.js:166
_bootSync @ composer-action-title.js:62
didBecomeReady @ index.js:93
invoke @ client-error-handler.js:88
flush @ client-error-handler.js:88
flush @ client-error-handler.js:88
_end @ client-error-handler.js:88
(Anônimo) @ client-error-handler.js:88
Promise.then
(Anônimo) @ client-error-handler.js:88
flush @ bookmark.js:114
_scheduleAutorun @ client-error-handler.js:88
_ensureInstance @ client-error-handler.js:88
schedule @ client-error-handler.js:88
f @ bookmark.js:114
waitForDOMReady @ index.js:93
init @ index.js:93
_ @ caret-position.js:86
create @ caret-position.js:86
(Anônimo) @ start-app.js:4
(Anônimo) @ discourse-boot.js:13
(Anônimo) @ discourse-boot.js:1
post-placeholder.js:53 [PLUGIN discourse-chain-topics] Aviso de depreciação: Definir classes de conector via registerConnectorClass está obsoleto. Consulte https://meta.discourse.org/t/32727 para padrões mais modernos. [id de depreciação: discourse.register-connector-class-legacy]
o @ post-placeholder.js:53
p @ topic-link.js:12
registerConnectorClass @ group.js:15
(Anônimo) @ topic-custom-field-initializer.js:141
e1 @ group.js:15
initialize @ topic-custom-field-initializer.js:13
(Anônimo) @ composer-action-title.js:62
(Anônimo) @ item.js:166
e.each @ form-template-validation.js:54
e.walk @ form-template-validation.js:54
e.each @ form-template-validation.js:54
e.topsort @ form-template-validation.js:54
_runInitializer @ item.js:166
runInstanceInitializers @ item.js:166
_bootSync @ composer-action-title.js:62
didBecomeReady @ index.js:93
invoke @ client-error-handler.js:88
flush @ client-error-handler.js:88
flush @ client-error-handler.js:88
_end @ client-error-handler.js:88
(Anônimo) @ client-error-handler.js:88
Promise.then
(Anônimo) @ client-error-handler.js:88
flush @ bookmark.js:114
_scheduleAutorun @ client-error-handler.js:88
_ensureInstance @ client-error-handler.js:88
schedule @ client-error-handler.js:88
f @ bookmark.js:114
waitForDOMReady @ index.js:93
init @ index.js:93
_ @ caret-position.js:86
create @ caret-position.js:86
(Anônimo) @ start-app.js:4
(Anônimo) @ discourse-boot.js:13
(Anônimo) @ discourse-boot.js:1
discourse-home-page.js:79 erro discourse-home-page: caminho inválido ""
s @ discourse-home-page.js:79
initialize @ discourse-home-page.js:42
(Anônimo) @ composer-action-title.js:62
(Anônimo) @ item.js:166
e.each @ form-template-validation.js:54
e.walk @ form-template-validation.js:54
e.each @ form-template-validation.js:54
e.topsort @ form-template-validation.js:54
_runInitializer @ item.js:166
runInstanceInitializers @ item.js:166
_bootSync @ composer-action-title.js:62
didBecomeReady @ index.js:93
invoke @ client-error-handler.js:88
flush @ client-error-handler.js:88
flush @ client-error-handler.js:88
_end @ client-error-handler.js:88
(Anônimo) @ client-error-handler.js:88
Promise.then
(Anônimo) @ client-error-handler.js:88
flush @ bookmark.js:114
_scheduleAutorun @ client-error-handler.js:88
_ensureInstance @ client-error-handler.js:88
schedule @ client-error-handler.js:88
f @ bookmark.js:114
waitForDOMReady @ index.js:93
init @ index.js:93
_ @ caret-position.js:86
create @ caret-position.js:86
(Anônimo) @ start-app.js:4
(Anônimo) @ discourse-boot.js:13
(Anônimo) @ discourse-boot.js:1
one-version.js:10 DEPRECATION: Componentes com templates resolvidos separadamente estão obsoletos. Migre para arquivos js/ts + hbs co-localizados ou para gjs/gts. Tentou buscar 'template:components/sidebar-theme-toggle'. [id de depreciação: component-template-resolving] Isso será removido no ember-source 6.0.0. Consulte https://deprecations.emberjs.com/id/component-template-resolving para mais detalhes.
(Anônimo) @ one-version.js:10
(Anônimo) @ base.js:71
(Anônimo) @ deprecate.js:100
(Anônimo) @ base.js:71
(Anônimo) @ deprecate.js:100
(Anônimo) @ base.js:71
l @ index.js:49
(Anônimo) @ render-tags.js:60
(Anônimo) @ base.js:71
u @ index.js:49
(Anônimo) @ base.js:71
(Anônimo) @ base.js:71
(Anônimo) @ base.js:71
(Anônimo) @ bookmark.js:114
(Anônimo) @ base.js:71
(Anônimo) @ form-template-validation.js:54
(Anônimo) @ base.js:71
s @ post-placeholder.js:53
(Anônimo) @ base.js:71
r @ base.js:71
c @ deprecate.js:100
k @ upload.js:65
h @ binary.js:7
(Anônimo) @ theme-setting.js:6
(Anônimo) @ theme-setting.js:6
lookupComponent @ theme-setting.js:6
(Anônimo) @ theme-setting.js:6
A @ theme-setting.js:6
o @ theme-setting.js:6
(Anônimo) @ theme-setting.js:6
compile @ theme-setting.js:6
ef @ theme-setting.js:6
(Anônimo) @ theme-setting.js:6
compile @ theme-setting.js:6
compile @ backup-codes.js:33
(Anônimo) @ backup-codes.js:33
evaluate @ backup-codes.js:33
evaluateSyscall @ backup-codes.js:33
evaluateInner @ backup-codes.js:33
evaluateOuter @ backup-codes.js:33
next @ backup-codes.js:33
_execute @ backup-codes.js:33
execute @ backup-codes.js:33
sync @ backup-codes.js:33
(Anônimo) @ theme-setting.js:6
(Anônimo) @ theme-setting.js:6
tA @ backup-codes.js:33
_renderRoots @ theme-setting.js:6
_renderRootsTransaction @ theme-setting.js:6
_renderRoot @ theme-setting.js:6
_appendDefinition @ theme-setting.js:6
appendOutletView @ theme-setting.js:6
invoke @ client-error-handler.js:88
flush @ client-error-handler.js:88
flush @ client-error-handler.js:88
_end @ client-error-handler.js:88
(Anônimo) @ client-error-handler.js:88
Promise.then
(Anônimo) @ client-error-handler.js:88
flush @ bookmark.js:114
_scheduleAutorun @ client-error-handler.js:88
_end @ client-error-handler.js:88
(Anônimo) @ client-error-handler.js:88
Promise.then
(Anônimo) @ client-error-handler.js:88
flush @ bookmark.js:114
_scheduleAutorun @ client-error-handler.js:88
_end @ client-error-handler.js:88
(Anônimo) @ client-error-handler.js:88
Promise.then
(Anônimo) @ client-error-handler.js:88
flush @ bookmark.js:114
_scheduleAutorun @ client-error-handler.js:88
_end @ client-error-handler.js:88
(Anônimo) @ client-error-handler.js:88
Promise.then
(Anônimo) @ client-error-handler.js:88
flush @ bookmark.js:114
_scheduleAutorun @ client-error-handler.js:88
_end @ client-error-handler.js:88
(Anônimo) @ client-error-handler.js:88
Promise.then
(Anônimo) @ client-error-handler.js:88
flush @ bookmark.js:114
_scheduleAutorun @ client-error-handler.js:88
_end @ client-error-handler.js:88
(Anônimo) @ client-error-handler.js:88
Promise.then
(Anônimo) @ client-error-handler.js:88
flush @ bookmark.js:114
_scheduleAutorun @ client-error-handler.js:88
_end @ client-error-handler.js:88
(Anônimo) @ client-error-handler.js:88
Promise.then
(Anônimo) @ client-error-handler.js:88
flush @ bookmark.js:114
_scheduleAutorun @ client-error-handler.js:88
_ensureInstance @ client-error-handler.js:88
schedule @ client-error-handler.js:88
f @ bookmark.js:114
waitForDOMReady @ index.js:93
init @ index.js:93
_ @ caret-position.js:86
create @ caret-position.js:86
(Anônimo) @ start-app.js:4
(Anônimo) @ discourse-boot.js:13
(Anônimo) @ discourse-boot.js:1
includes.js?v=116e2a6fd81c286e004e2a0afb03baa1:840
GET https://www.tometo.me/u/shen_hualuo/card.json 500 (Erro Interno do Servidor)
(Anônimo) @ includes.js?v=116e2a6fd81c286e004e2a0afb03baa1:840
send @ jquery.js:7408
ajax @ jquery.js:7408
a @ base.js:71
(Anônimo) @ named-references.js:49
e @ named-references.js:49
A @ base.js:71
(Anônimo) @ moment.js:257
(Anônimo) @ group.js:15
(Anônimo) @ named-references.js:49
e @ named-references.js:49
getAndRemove @ group.js:15
findDetails @ moment.js:257
findByUsername @ moment.js:257
_showCallback @ item.js:166
(Anônimo) @ topic-link.js:12
invoke @ client-error-handler.js:88
flush @ client-error-handler.js:88
flush @ client-error-handler.js:88
_end @ client-error-handler.js:88
end @ client-error-handler.js:88
_runExpiredTimers @ client-error-handler.js:88
setTimeout
setTimeout @ client-error-handler.js:88
_installTimerTimeout @ client-error-handler.js:88
_reinstallTimerTimeout @ client-error-handler.js:88
_later @ client-error-handler.js:88
later @ client-error-handler.js:88
T @ bookmark.js:114
_show @ topic-link.js:12
_showCardOnClick @ topic-link.js:12
_cardClickHandler @ topic-link.js:12
_run @ client-error-handler.js:88
_join @ client-error-handler.js:88
join @ client-error-handler.js:88
p @ bookmark.js:114
(Anônimo) @ bookmark.js:114
includes.js?v=116e2a…04e2a0afb03baa1:840
GET https://www.tometo.me/u/shen_hualuo.json 500 (Erro Interno do Servidor)
(Anônimo) @ includes.js?v=116e2a…04e2a0afb03baa1:840
send @ jquery.js:7408
ajax @ jquery.js:7408
a @ base.js:71
(Anônimo) @ named-references.js:49
e @ named-references.js:49
A @ base.js:71
(Anônimo) @ moment.js:257
(Anônimo) @ group.js:15
(Anônimo) @ named-references.js:49
e @ named-references.js:49
getAndRemove @ group.js:15
findDetails @ moment.js:257
afterModel @ post-placeholder.js:53
runAfterModelHook @ topic-link.js:12
(Anônimo) @ topic-link.js:12
k @ named-references.js:49
w @ named-references.js:49
invoke @ client-error-handler.js:88
flush @ client-error-handler.js:88
flush @ client-error-handler.js:88
_end @ client-error-handler.js:88
(Anônimo) @ client-error-handler.js:88
Promise.then
(Anônimo) @ client-error-handler.js:88
flush @ bookmark.js:114
_scheduleAutorun @ client-error-handler.js:88
_ensureInstance @ client-error-handler.js:88
schedule @ client-error-handler.js:88
(Anônimo) @ hashtag-autocomplete.js:158
T @ named-references.js:49
resolve @ topic-link.js:12
T @ form-template-validation.js:54
getTransitionByIntent @ topic-link.js:12
transitionByIntent @ topic-link.js:12
doTransition @ topic-link.js:12
transitionTo @ topic-link.js:12
_doTransition @ upload.js:65
transitionTo @ binary.js:7
(Anônimo) @ theme-setting.js:6
l @ UIPlugin.js:138
click
Então, eu não acredito que você estivesse no modo de segurança.
Este componente parece estar causando um problema:
topic-creator-avatar.hbr:1 [THEME 300 '最新主题摘要'] Erro de compilação: extensão de arquivo desconhecida 'hbr' (discurso/conectores/lista-de-tópicos-antes-de-colunas/topic-creator-avatar.hbr)
(Anônimo) @ topic-creator-avatar.hbr:1
Isso ocorre porque templates hbr (raw) não são mais suportados.
Entre em contato com o autor daquele Tema.
@manuel você também não encontrou isso?
Parece que estes estão relacionados.
Parece que Gamification está modificando os dados do Usuário e está lançando um erro.
Portanto, isso quase certamente explica por que o Cartão do Usuário não está carregando.
Parece que você tem mais de um problema e eles estão relacionados a addins, não ao Core Discourse.
Eu removeria:
- Plugin Gamification
- Qualquer componente de tema ([THEME 300 ‘最新主题摘要’]) que esteja causando esse outro erro no navegador (precisa ser reescrito para evitar o uso de templates .hbr)
até que você possa resolver esses problemas.
Sugiro relatar o erro de Gamification no Tópico Gamification.
Como é um plugin official, você também pode relatar um bug na categoria Bug (embora lembre-se de adicionar a tag gamification). ![]()
Isso é verdade.
De qualquer forma, esse tópico agora trata de duas questões, e elas provavelmente deveriam ser divididas em duas.
O cartão do usuário que não carrega é provavelmente um problema de Gamificação, então talvez use este para isso. TAG gamification adicionada.
(ok, então ISSO É confuso, a interface de edição de Metadados do Tópico mudou!)
Sim.
![]()
Foi quando tentei instalar um backup. O acesso a user-cards e user-pages falhou até que eu deletei o leaderboard do backup.
edit: em outra nota, parece que meu screenshot não abre em uma lightbox? O upload tinha 1693px de largura, mas só mostra em 690.
Isso parece muito dracônico. Será que existe uma solução mais leve?
Isso parece potencialmente relacionado:
Sim, estranho, original aqui para pessoas que querem realmente conseguir lê-la ![]()
Pode ser. Essa migração exclui visualizações de cache versionadas que têm _x anexado ao final (onde x é um dígito). Mas a tabela que ela perde é uma tabela não versionada (sem _x).
@sheng_hualuo você pode tentar executar isso de um console rails?
DiscourseGamification::LeaderboardCachedView.regenerate_all
gamification_leaderboard_cache_1_all_time não é a versão 1?
Acho que por algum motivo a convenção de nomenclatura foi alterada.
Não, esse é o ID do leaderboard. Está tudo explicado na mensagem de commit do commit que você mencionou.
Além disso, olhe para a regex 'gamification_leaderboard_cache_[0-9]+_[a-zA-Z_]+_[1-9]$'
Ah, tudo isso começa a fazer sentido. Então, a versão (hem) foi descartada, mas, por algum motivo, a nova versão (hem) não foi materializada.
Não tenho o rastreamento completo, mas acredito que o erro ocorra durante a serialização de gamification_score para o cartão do usuário.
Dada a natureza transitória dessas visualizações materializadas, uma consulta de pontuação não deveria causar um erro em todo o sistema, deveria retornar a uma “pontuação padrão” quando a visualização não existir.
Há um bug na verificação de existência da visualização materializada aqui. Ela informa que uma visualização existe quando na verdade não existe (pelo menos não no esquema public atual), o que leva a uma consulta em uma visualização inexistente, resultando no erro.
Acho que o que aconteceu aqui foi que a visualização materializada estava presente no esquema backup criado como parte da restauração, mas não no esquema public. O esquema backup é mantido por um tempo após a restauração.
Tenho um PR pronto com uma correção.