Eu estava tentando criar um plugin no Discourse seguindo esta página: Developing Discourse Plugins - Part 1 - Create a basic plugin e fiz o upload da pasta de plugins no servidor. Depois disso, não consegui acessar a página de administração no Discourse.
Quando verifiquei no console do navegador, estou vendo o seguinte erro: Erro: Não há rota chamada admin
Verifiquei no SSH se o papel do meu usuário tinha privilégios de administrador. Tentei excluir as pastas de plugins do Discourse também, mas estou enfrentando o mesmo problema.
Tentei alterar o acesso usando este comando ./launcher enter app, mas não funcionou para mim.
ah, eu quis dizer que tenho acesso de administrador no Discourse.
Você quer dizer que fez o upload de um plugin diretamente no seu servidor?
O Discourse precisa compilar os assets JavaScript do plugin primeiro. Você deve fazer o upload do plugin para um repositório do GitHub, editar o app.yml para adicioná-lo e, em seguida, executar ./launcher rebuild app.
Fazer o upload direto do plugin para a pasta de plugins sem compilar fará com que o frontend do Discourse não encontre o arquivo compilado e cause erros.
Além disso, se você tiver o Cloudflare ativado para o seu servidor, lembre-se de desativar a minificação automática e excluir o cache.
Muito obrigado pela ajuda. Funcionou para mim desativando a minificação automática para o Cloudflare.
Como sou novo no Discourse, não sei muito como trabalhar com plugins. Então, eu estava tentando adicionar o plugin na pasta de plugins, mas tentei o que você sugeriu, que funcionou para mim, carregando o plugin no GitHub e buscando-o no Repositório GitHub.
Posso perguntar mais uma coisa? Você pode me guiar sobre como adicionar campos personalizados ou quaisquer campos adicionais ao tópico? Na verdade, quero criar um plugin que aprimore a funcionalidade do tópico. Quero adicionar campos personalizados para o tópico e armazenar seus dados no banco de dados e renderizá-los na página de detalhes dos tópicos.
Você deve iniciar um novo tópico para isso e a pergunta em si é muito ampla para uma resposta real, mas você deve dar uma olhada em Desenvolvendo Plugins Discourse - Parte 1 - Crie um plugin básico e o resto. Você vai querer procurar coisas sobre a criação de topic_custom_fields e adicioná-los ao serializador. Veja GitHub - discourse/all-the-plugins para obter todos os plugins e, em seguida, você pode pesquisar neles por exemplos.
Você pode dizer mais sobre o que está fazendo que requer os campos personalizados, pois pode haver alguma outra maneira de realizar essa tarefa sem campos personalizados e sem um plugin.