Hallo, ich bin dabei, von AnswerHub zu Discourse zu migrieren. Da ich jedoch keinen Zugriff auf die AnswerHub-Datenbank habe, habe ich die gesamte Website durchsucht, um die Ideen und ihre jeweiligen Stimmenzahlen zu sammeln.
Wie kann ich die Stimmenzahl für eine bestimmte Frage in Discourse überschreiben? Zum Beispiel hat die Frage „make a new recipe with oranges“ 42 Stimmen auf meinem AnswerHub. Ich habe die Frage importiert, möchte aber die Stimmenzahl auf 42 setzen, anstatt dass sie standardmäßig auf 0 gesetzt wird. Auf diese Weise können die Benutzer die genaue Anzahl der Stimmen für jede Frage sehen.
Gibt es eine Möglichkeit, einen PostgreSQL-Befehl auszuführen, um die Stimmenzahl manuell festzulegen?
Muss ich 100+ Fake-Benutzer erstellen, um die Stimmenzahl für jede Frage zu simulieren? Ich hoffe nicht, da das keine ideale Lösung ist
Ich bin kein Experte und habe dieses Plugin noch nie benutzt
Das ist eine tolle Frage und ich fürchte, ich kann sie nicht genau beantworten, aber vielleicht kann ich dir ein paar Hinweise geben, da du dich anscheinend ein wenig mit dem Programmieren auskennst (da du von Grund auf migrierst).
Das Abstimmungs-Plugin verwendet 2 Tabellen:
discourse_voting_topic_vote_count
Feldname
Typ
Einschränkungen
id
serial
Primärschlüssel
topic_id
integer
Fremdschlüssel (verweist auf topics), kann NULL sein
votes_count
integer
kann NULL sein
created_at
timestamp
updated_at
timestamp
discourse_voting_votes
Feldname
Typ
Einschränkungen
id
serial
Primärschlüssel
topic_id
integer
Fremdschlüssel (verweist auf topics), kann NULL sein
user_id
integer
Fremdschlüssel (verweist auf users), kann NULL sein
archive
boolean
kann NULL sein, Standard false
created_at
timestamp
updated_at
timestamp
Vielleicht interessieren dich auch die Einstellungen des Plugins, aber ich schätze, die kennst du schon
Schließlich muss die Abstimmung über Themen pro Kategorie aktiviert werden. Ich würde sie also während der Erstellung der Kategorien im Import-Skript aktivieren.
Was die richtige Befüllung der Stimmen im Thema während einer Migration betrifft, bin ich kein Experte, aber ich schätze, ich würde zufällige, eindeutige Benutzer für jede Stimme verwenden, da ein Job verhindert, dass derselbe Benutzer mehrmals abstimmt und doppelte Stimmen löscht:
Wow, danke für diesen tollen und hilfreichen Beitrag!
Ich habe mich für einen anderen Ansatz entschieden:
Auf meiner ursprünglichen Website konnte ich die Daten darüber abrufen, wer für was gestimmt hat, also habe ich diese Informationen in einer Datenbank gespeichert. Später habe ich ein Python-Skript mit der Requests-Bibliothek verwendet, um Stimmen von ihren migrierten Konten für die Ideen abzugeben, für die sie bereits gestimmt hatten, und voilà!