Erreur de chargement Zeitwerk avec le générateur de plugin Rails

Je souhaite développer un nouveau plugin avec Rails plugin generator

git clone https://github.com/discourse/discourse
rails g plugin discourse-xxx
rails s 

Message d’erreur :

nom de constante incorrect Discourse-xxx déduit par Module à partir du répertoire (Zeitwerk::NameError)

/Users/project/discourse/plugins/discourse-xxx/app/controllers/discourse-xxx

Solutions possibles pour résoudre ce problème :

  • Indiquer à Zeitwerk d’ignorer ce répertoire spécifique.
  • Indiquer à Zeitwerk d’ignorer l’un de ses répertoires parents.
  • Renommer le répertoire pour qu’il respecte les conventions de nommage.
  • Modifier l’inflector pour gérer ce cas.

Cependant, tout fonctionne correctement si le nom du plugin ne contient pas de “-”

rails g plugin xxx
rails s

2 « J'aime »

Je ne l’ai pas regardé depuis que nous avons mis en place Zeitwerk. Je vais jeter un coup d’œil.

6 « J'aime »

Corrigé