Ich muss eine alte Anwendung nach Discourse migrieren.
Ich verwende die APIs mit CURL, um die Benutzer und Gruppen zu erstellen.
Ich verwende Discourse v3.1.0.beta5 +392
Für Benutzer hatte ich keine Probleme:
curl -X POST „site-discourse/users.json“
-H „Api-Key: api-key“
-H „Api-Username: api-username“
-F „name=name1“
-F „email=email1“
-F „password=password1“
-F „username=username1“
-F „active=true“
-F „approved=true“
Für Gruppen habe ich versucht, alles auf einmal zu erstellen: die Gruppe, bio_raw, Mitglieder und Besitzer gemäß Discourse API Docs
curl -X POST „site-discourse/admin/groups.json“
-H „Content-Type: application/json“
-H „Api-Key: api-key“
-H „Api-Username: api-username“
-d ‚{„name“:“groupe1“,„bio_raw“:“A propos du groupe1“,„usernames“:“username1“,„owner_usernames“: „owner_username1“}‘
Gruppe wird mit Namen und bio_raw erstellt, aber ohne username1 und owner_username1
Aber ich kann Mitglieder auf folgende Weise erstellen:
curl -X PUT -d ‚{„usernames“: „username1,username2“}‘
-H „Content-Type: application/json“
-H „Api-Key: api-key“
-H „Api-Username: api-username“ site-discourse/admin/groups/$group_id/members.json
Aber ich kann owner_usernames nicht mit der API erstellen!
Durch Reverse-Engineering der API habe ich verstanden, dass die Benutzernamen durch ein Komma ohne Leerzeichen getrennt werden müssen. Wenn Sie versuchen, mehrere Benutzer gleichzeitig hinzuzufügen, könnte dies Ihr Problem sein.