beim Erstellen eines Plugins bin ich auf folgenden Fehler gestoßen:
Error: Can't hydrate plugin without an `id`
at Class._hydrate (discourse/models/store:330)
at eval (discourse/models/store:222)
at Array.map (<anonymous>)
at Class._resultSet (discourse/models/store:221)
at eval (discourse/models/store:80)
at tryCatcher (ember:61303)
at invokeCallback (ember:61476)
at publish (ember:61462)
at eval (ember:55822)
at invoke (ember:54023)
Könnte mir jemand sagen, auf welche ID sich dieser Fehler bezieht?
Der Fehler erscheint nur in der Konsole, wenn ich zu /admin navigiere und dann zur Plugins-Seite gehe.
Welche weiteren Informationen werden benötigt, um diesen Fehler zu debuggen?
Wir haben es herausgefunden. Wenn wir zu /admin/plugins.json navigieren, können wir sehen, dass die Plugin-ID, die normalerweise durch den Plugin-Namen befüllt wird, nicht gesetzt war.
Es stellte sich heraus, dass diese Felder durch einen Abschnitt mit Kommentaren in der Datei plugin.rb befüllt werden. Die Lösung bestand also darin, Folgendes hinzuzufügen:
# frozen_string_literal: true
# name: example
# about: example about
# version: 1.0
# authors: example
# url: example
Ich finde, wenn man Kommentare in einer Datei verlangt, sollte dies irgendwo gut dokumentiert sein. Deshalb hinterlasse ich diese Lösung hier.