Ich verwende die Discourse API, um Beiträge aus einem Forum zu extrahieren. Ich benötige Hilfe beim Verständnis der Bedeutungen der von der API zurückgegebenen Felder. Zum Beispiel ist das Feld post_type in jedem post eine Zahl. Welche sind die gültigen Werte und was bedeuten sie? Ebenso ist die id unter actions_summary eine Zahl. Es gibt weitere Felder wie reads, score usw., bei denen ich mir nicht sicher bin. Gibt es Hinweise, wo ich diese Informationen finden kann? Danke!
Wenn du das Data Explorer-Plugin auf deiner Seite installiert hast, kannst du durch Überfahren der Einträge mit der Maus Details zu den verwendeten Zahlen-Codes erhalten:
Wenn du beispielsweise über das Feld posts post_type fährst, werden folgende Werte angezeigt:
- regular: 1
- moderator action: 2
- small action: 3
- whisper: 4
Abgesehen vom Data Explorer ist der einzige Ort, an dem ich diese Informationen kenne, der Discourse-Code. Um beispielsweise die Bedeutung jedes action_type aus der Tabelle user_actions zu finden, gibst du UserAction.types in der Rails-Konsole ein. Das ergibt folgende Werte:
{:like=>1, :was_liked=>2, :bookmark=>3, :new_topic=>4, :reply=>5, :response=>6, :mention=>7, :quote=>9, :edit=>11, :new_private_message=>12, :got_private_message=>13, :solved=>15, :assigned=>16}
Danke @simon! Das ist eine interessante Möglichkeit, an diese Informationen zu gelangen. Ich habe mich basierend auf deinen Vorschlägen etwas umgesehen und diesen Codeabschnitt für user_actions gefunden, konnte aber nach ausgiebiger Suche nichts Ähnliches für post_type finden. Ich hatte gehofft, dass jedes vom API zurückgegebene Feld irgendwo dokumentiert ist, zumindest für wichtige Felder, die eine erhebliche semantische Bedeutung tragen.
Das ist verständlich. Es gibt jedoch einen ähnlichen Code. Er befindet sich hier: discourse/app/models/post.rb at main · discourse/discourse · GitHub. Die Struktur der Discourse-Datenbank ist sehr konsistent. Hoffentlich hilft dir das, das Fehlen von Dokumentation etwas auszugleichen.
Ich bin mir nicht sicher, ob jedes vom API zurückgegebene Feld dokumentiert wird, aber die Dokumentation der verschiedenen Stellen, an denen Nummencodes zurückgegeben werden, scheint wichtig. Beispiele dafür sind:
Post.typesUserAction.typesNotification.typesNotificationLevels.allUserOption.email_level_types
Wenn wir damit fortfahren, bin ich mir nicht sicher, wo die Dokumentation am besten untergebracht wäre. Möglicherweise unter https://docs.discourse.org/, aber es ist möglich, dass es dabei technische Probleme geben wird.
Danke @simon! Ja, die englischen Namen/einzeiligen Beschreibungen für numerische Codes aufzulisten, wäre sehr nützlich. Gibt es eine Stelle, an der ich eine solche Anfrage stellen kann?
Ich stimme zu, dass diese Felder dokumentiert werden müssen. Ich werde dieses Thema mir selbst zuweisen und sicherstellen, dass es erledigt wird.
