Como substituir um template.hbs de um plugin

Olá a todos,

Digamos que eu queira sobrescrever um template hbs de um plugin, como o incrível plugin Events.

Tentei os seguintes scripts:

<script type="text/x-handlebars" data-template-name="components/events-calendar-day">
   ***algumas coisas para que o ícone da categoria possa ser exibido em vez do círculo***
</script>
<script type="text/x-handlebars" data-template-name="/plugins/discourse-events/assets/javascripts/discourse/templates/components/events-calendar-day">
   ***algumas coisas para que o ícone da categoria possa ser exibido em vez do círculo***
</script>

mas eles não são executados. Acho que o template não é encontrado nesse local, então como posso acessá-lo? Os templates dos plugins estão em seu próprio diretório? Se sim, onde? Isso não é explicado no guia de temas.

Obrigado desde já!

Vou garantir que adicione instruções sobre isso ao guia principal, mas por enquanto, dê uma olhada na minha resposta:

Muito obrigado, mas isso não responde ao meu caso de uso:

Pelo que entendi, a pasta «root» é (discourse/app/assets/javascripts/discourse/app/templates/), então posso acessar um componente em uma subpasta a partir desse caminho.

Mas o modelo que quero acessar está em:
discourse/plugins/discourse-events/assets/javascripts/discourse/templates/components/
que não é uma subpasta da primeira. Existe alguma maneira de modificá-los sem fazer um fork do plugin?

Ou você quer dizer que devo usar
/javascripts/discourse/templates/components/template-name?
(Tentei e parece não funcionar, mas posso ter cometido algum outro erro.)

Ou eu entendi algo errado?

Obrigado desde já!

Talvez haja alguma confusão em torno da terminologia aqui. De qualquer forma, basta usar:

<script type="text/x-handlebars" data-template-name="javascripts/components/template-name">
  
</script>

Você não precisa incluir nada mais no data-template-name. Ele será mapeado corretamente.

Muito obrigado!
Isso é exatamente o que eu precisava. :slight_smile: