Massenkategorieerstellung über CSV

Ich habe mich mit der massenhaften Erstellung von Kategorien beschäftigt.

Die beste Lösung, die ich bisher gefunden habe, ist diese: Administrative Bulk Operations

Allerdings scheint das Erstellen dieser JSON-Dateien zum Zweck der massenhaften Erstellung neuer benutzerdefinierter Kategorien ziemlich mühsam zu sein, es sei denn, man verfügt über einen eigenen Builder, der sie erstellt und die IDs korrekt zuweist. Besonders wenn man mit Unterkategorien arbeitet.

Ich denke, es wäre eine nützliche Funktion für Discourse, die massenhafte Erstellung von Kategorien über CSV-Upload zu unterstützen, vergleichbar mit dem Hochladen von Tags, in einer einfachen Formatierung. Zum Beispiel wie unten:

Kategorie Unterkategorie 1 Unterkategorie 2 Beschreibung
meine benutzerdefinierte übergeordnete Kategorie Diese Kategorie ist eine übergeordnete Kategorie
meine benutzerdefinierte übergeordnete Kategorie meine benutzerdefinierte Unterkategorie Dies ist eine Unterkategorie der Ebene 2
meine benutzerdefinierte übergeordnete Kategorie meine benutzerdefinierte Unterkategorie meine benutzerdefinierte Unter-Unterkategorie Dies ist eine Unterkategorie der Ebene 3

Eine Erweiterung um weitere benutzerdefinierte Optionen/Spalten könnte ebenfalls in Betracht gezogen werden.

Hier ist ein Beispiel für einen JSON-Eintrag für eine Kategorie, exportiert mit dieser Methode: Administrative Bulk Operations

{
  "id": 1,
  "name": "Uncategorized",
  "color": "0088CC",
  "created_at": "2020-07-23T02:27:33.970Z",
  "user_id": -1,
  "slug": "uncategorized",
  "description": "",
  "text_color": "FFFFFF",
  "auto_close_hours": null,
  "position": 0,
  "parent_category_id": null,
  "auto_close_based_on_last_post": false,
  "topic_template": null,
  "all_topics_wiki": false,
  "permissions_params": {}
},
1 „Gefällt mir“

Es ist selten notwendig, viele Kategorien zu erstellen, daher ist die Wahrscheinlichkeit hoch, dass die Benutzeroberfläche zu umständlich wird, um es sich zu lohnen.

Ich würde ein Ruby-Skript schreiben, um die Kategorien über die Konsole zu erstellen. Du benötigst keine ID. Ich denke, du kannst sie nur mit dem Namen erstellen, aber du kannst auch die Beschreibung und Berechtigungen laden, wenn du dich wirklich anstrengst.

4 „Gefällt mir“

Als wir das gemacht haben, hat einer unserer Moderatoren ein Skript mit einem API-Schlüssel ausgeführt, um diese massenhaft anzulegen. Es hat wirklich gut funktioniert, obwohl sich der Teil mit den Berechtigungen, wenn ich mich recht erinnere, etwas seltsam anfühlte. Ansonsten war es eine RIESIGE Zeitersparnis (wir mussten über 700 Unterkategorien erstellen).

4 „Gefällt mir“