J’essayais de créer un plugin dans Discourse en suivant cette page : Developing Discourse Plugins - Part 1 - Create a basic plugin et j’ai téléchargé le dossier des plugins sur le serveur. Après cela, je n’ai plus pu accéder à la page d’administration de Discourse.
Lorsque j’ai vérifié dans la console du navigateur, je vois l’erreur suivante : Erreur : Il n’y a pas de route nommée admin
J’ai vérifié dans SSH, le rôle de mon utilisateur a les privilèges d’administrateur. J’ai également essayé de supprimer les dossiers de plugins de Discourse, mais je rencontre le même problème.
J’ai essayé de changer l’accès en utilisant cette commande ./launcher enter app mais cela n’a pas fonctionné pour moi.
oh, je voulais dire que j’ai un accès administrateur dans Discourse.
Voulez-vous dire que vous avez téléchargé un plugin directement sur votre serveur ?
Discourse doit d’abord compiler les ressources JavaScript du plugin. Vous devriez télécharger le plugin dans un dépôt GitHub, l’ajouter dans app.yml, puis exécuter ./launcher rebuild app.
Télécharger directement le plugin dans le dossier des plugins sans compilation entraînera l’impossibilité pour le frontend de Discourse de trouver le fichier compilé et provoquera des erreurs.
De plus, si vous avez activé Cloudflare pour votre serveur, n’oubliez pas de désactiver la minification automatique et de vider le cache.
Merci beaucoup pour votre aide. Cela a fonctionné pour moi en désactivant la minification automatique pour Cloudflare.
Comme je suis nouveau sur Discourse, je ne sais pas trop comment travailler avec les plugins. J’essayais donc d’ajouter un plugin dans le dossier des plugins, mais j’ai essayé ce que vous avez suggéré, qui a fonctionné pour moi en téléchargeant le plugin sur GitHub et en le récupérant depuis le dépôt GitHub.
Puis-je vous demander encore une chose, pouvez-vous me guider sur la façon d’ajouter des champs personnalisés ou des champs supplémentaires à un sujet ? En fait, je veux créer un plugin qui améliore la fonctionnalité des sujets. Je veux ajouter des champs personnalisés pour le sujet et stocker ses données dans la base de données et les afficher sur la page des détails du sujet.
Vous devriez démarrer un nouveau sujet pour cela et la question elle-même est trop vague pour une réponse concrète, mais vous devriez jeter un œil à Developing Discourse Plugins - Part 1 - Create a basic plugin et au reste. Vous voudrez rechercher des informations sur la création de topic_custom_fields et leur ajout au sérialiseur. Voir GitHub - discourse/all-the-plugins pour obtenir tous les plugins, puis vous pourrez y rechercher des exemples.
Vous pourriez en dire plus sur ce que vous faites qui nécessite les champs personnalisés, car il pourrait y avoir une autre façon d’accomplir cette tâche sans champs personnalisés et sans plugin.