Frage-Antwort-Plugin

Wir hatten großen Erfolg mit einem unserer Experimente:

Mehrere Einträge und mehrere Einträge erhalten zusätzliche Kommentare. Interessanterweise wurde das Hochwählen selbst nicht viel genutzt, aber vielleicht liegt es daran, dass dies eine neue Idee ist und die Leute es nicht gewohnt sind.

Ein Problem, das wir nicht erwartet hatten, war, dass es bei all dieser Aktivität nicht einfach ist, neue Kommentare zu finden, außer dem allerletzten (weil es das ist, auf das von der Zeitleiste aus verlinkt wird). Übersehen wir etwas, wie eine versteckte alternative Möglichkeit, die Beiträge chronologisch anzuzeigen? Oder gibt es Gedanken, Ratschläge?

1 „Gefällt mir“

Hat jemand versucht, eine SQL-Abfrage zu erstellen, um jedem, der mindestens eine Antwort eingereicht hat, die mindestens eine Upvote in einer bestimmten Kategorie erhalten hat, eine Auszeichnung zu gewähren? Beispiele für Abfragen mit mehr Antworten und/oder mehr Upvotes wären sehr nützlich, um silberne und goldene Auszeichnungen rund um dieses großartige Plugin zu erstellen. :slight_smile:

1 „Gefällt mir“

Wie viele vor mir, habe ich nach einer SO-ähnlichen Q\u0026A-Seite gesucht, die auf einer soliden Grundlage basiert, Open-Source ist, eine aktive \u0026 lebendige Community hat, und Discourse scheint mit seinen Plugins (fast) perfekt dazu zu passen.

Dann habe ich in einem anderen Thread einen Hinweis auf Ihr Plugin gefunden, und das sieht wirklich sehr vielversprechend aus, wenn man einige der obigen Beiträge liest. Ich frage mich, ob es eine Seite gibt, die das neueste/fast neueste Discourse mit diesem Plugin (und hoffentlich nicht viel anderem) verwendet, um ein Gefühl dafür zu bekommen, wie dieses Plugin funktioniert \u0026 sich anfühlt?

Angus,

Wir müssen herausfinden, ob wir dies „in den Ruhestand versetzen“ und zu #plugin:broken-plugin verschieben oder ob du es so belassen und langfristig pflegen möchtest.

Das offizielle Q&A-Plugin (das von vielem hier inspiriert ist) ist jetzt bereit für die Beta. Wir müssen also entscheiden, was wir mit diesem Plugin machen.

3 „Gefällt mir“

Wir werden diesen hier ausmustern. Wenn der neue veröffentlicht wird, können Sie ihn in #plugin:broken-plugin verschieben und einen Hinweis anbringen, der die Leute auf den neuen verweist. Ich werde auch die Repository-Readme aktualisieren.

Wenn ein Migrationsskript benötigt wird, schreibe ich es gerne, aber nur, wenn es unter den bestehenden Benutzern dieses Plugins Bedarf gibt (bitte lassen Sie mich wissen, ob Sie dazu gehören).

5 „Gefällt mir“

Hallo Angus,

ich habe gerade ein neues Thema für das offizielle Discourse Question Answer Plugin veröffentlicht:

4 „Gefällt mir“

Ich habe einen Kunden, der es benötigen wird.

Schien interessiert zu sein. Nein. Ich glaube, sie meinen nur ein bestehendes normales Thema. Ich bin etwas überrascht, dass dies nicht gelöst ist, oder vielleicht muss ich nur Discourse Upvotes installieren und es funktioniert einfach?

Ich sehe keine Rake-Tasks im neuen Plugin, und wenn ich mir die Migrationen ansehe, scheint es keine Magie zu geben, obwohl ich mich in einem oder beiden Punkten irren könnte.

EDIT: OOps. Es sieht tatsächlich so aus, als ob die erste Migration die Dinge in das neue Plugin verschiebt, genau hier. . . Ich führe jetzt das Upgrade durch und werde dies löschen, wenn es funktioniert.

EDIT 2: Seufz. Es hat nicht funktioniert. Es schlägt mit "PG::InvalidParameterValue: ERROR: cannot extract elements from a scalar", fehl.

Here’s the problem. A bunch of the post_custom_fields look like this:

  "\"[\\\"[{\\\\\\\"direction\\\\\\\":\\\\\\\"up\\\\\\\",\\\\\\\"action\\\\\\\":\\\\\\\"create\\\\\\\",\\\\\\\"user_id\\\\\\\":51,\\\\\\\"created_at\\\\\\\":\\\\\\\"2018-11-02T14:21:49.785+00:00\\\\\\\"}]\\\",{\\\"direction\\\":\\\"up\\\",\\\"action\\\":\\\"create\\\",\\\"user_id\\\":61,\\\"created_at\\\":\\\"2018-11-15T18:49:43.875+00:00\\\"}]\"",

rather than, maybe, this

 "[{\"direction\":\"up\",\"action\":\"create\",\"user_id\":6,\"created_at\":\"2018-07-18T16:37:42.446+00:00\"}]",

Some are worse:

 "\"[\\\"[\\\\\\\"[\\\\\\\\\\\\\\\"[\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"[\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"[\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"[{\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"direc
tion\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"up\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"action\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
\\\\\\\\\\\\\\\\\"create\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"user_id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":161,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"created_at\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"2018-11-14T01:41:18.071+00:00\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"}]\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",{\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"direction\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"up\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"action\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"create\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"user_id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":21,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"created_at\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"2018-11-15T18:41:37.215+00:00\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"}]\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",{\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"direction\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"up\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"action\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"destroy\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"user_id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":21,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"created_at\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"2018-11-15T18:41:44.680+00:00\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"}]\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",{\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"direction\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"up\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"action\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"create\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"user_id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":21,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"created_at\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"2018-11-15T18:41:52.440+00:00\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"}]\\\\\\\\\\\\\\\",{\\\\\\\\\\\\\\\"direction\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"up\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\"action\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"destroy\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\"user_id\\\\\\\\\\\\\\\":21,\\\\\\\\\\\\\\\"created_at\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"2018-11-15T18:41:56.158+00:00\\\\\\\\\\\\\\\"}]\\\\\\\",{\\\\\\\"direction\\\\\\\":\\\\\\\"up\\\\\\\",\\\\\\\"action\\\\\\\":\\\\\\\"create\\\\\\\",\\\\\\\"user_id\\\\\\\":3,\\\\\\\"created_at\\\\\\\":\\\\\\\"2019-05-17T17:21:51.066+00:00\\\\\\\"}]\\\",{\\\"direction\\\":\\\"up\\\",\\\"action\\\":\\\"create\\\",\\\"user_id\\\":43,\\\"created_at\\\":\\\"2019-06-01T14:10:48.056+00:00\\\"}]\"",

So I guess I’d need to recursively try to un-quote these a bunch of times until it got back to the right way? I guess I’ll see if I can google the Ruby un-quotify function. . . .

It looks like a real mess:

[24] pry(main)> too.value.gsub(/\\+/,"\\").undump
=> "[\"[\"[\"[\"[\"[\"[{\"direction\":\"up\",\"action\":\"create\",\"user_id\":161,\"created_at\":\"2018-11-14T01:41:18.071+00:00\"}]\",{\"direction\":\"up\",\"action\":\"create\",\"user_id\":21,\"created_at\":\"2018-11-15T18:41:37.215+00:00\"}]\",{\"direction\":\"up\",\"action\":\"destroy\",\"user_id\":21,\"created_at\":\"2018-11-15T18:41:44.680+00:00\"}]\",{\"direction\":\"up\",\"action\":\"create\",\"user_id\":21,\"created_at\":\"2018-11-15T18:41:52.440+00:00\"}]\",{\"direction\":\"up\",\"action\":\"destroy\",\"user_id\":21,\"created_at\":\"2018-11-15T18:41:56.158+00:00\"}]\",{\"direction\":\"up\",\"action\":\"create\",\"user_id\":3,\"created_at\":\"2019-05-17T17:21:51.066+00:00\"}]\",{\"direction\":\"up\",\"action\":\"create\",\"user_id\":43,\"created_at\":\"2019-06-01T14:10:48.056+00:00\"}]"
[25] pry(main)> one.value.gsub(/\\+/,"\\").undump
=> "[\"[{\"direction\":\"up\",\"action\":\"create\",\"user_id\":134,\"created_at\":\"2019-02-11T19:33:22.533+00:00\"}]\",{\"direction\":\"up\",\"action\":\"create\",\"user_id\":213,\"created_at\":\"2019-02-28T15:12:07.776+00:00\"}]"

I can do

SELECT
    post_id,
    jsonb_array_elements(value::jsonb) AS value                                   
  FROM post_custom_fields WHERE name = 'vote_history'
 and value not like '\"[%';
discourse=>   SELECT
    post_id,
    jsonb_array_elements(value::jsonb) AS value
  FROM post_custom_fields WHERE name = 'vote_history'
 and value not like '\"[%';

and get ~200 of ~250 entries, leaving a few that still look something like

    1865 | "[\"[\\\"[{\\\\\\\"direction\\\\\\\":\\\\\\\"up\\\\\\\",\\\\\\\"action\\\\\\\":\\\\\\\"create\\\\\\\",\\\\\\\"user_id\\\\\\\":161,\\\\\\\"created_at\\\\\\\":\\\\\\\"2019-06-28T15:39:44.438+00:00\\\\\\\"}]\\\",{\\\"direction\\\":\\\"up\\\",\\\"action\\\":\\\"create\\\",\\\"user_id\\\":39,\\\"created_at\\\":\\\"2019-07-03T19:29:04.663+00:00\\\"}]\",{\"direction\":\"up\",\"action\":\"create\",\"user_id\":298,\"created_at\":\"2019-07-11T13:51:52.447+00:00\"}]"
1 „Gefällt mir“

Ich bin mir nicht sicher, wie Sie zu mehrfach maskiertem JSON gekommen sind, aber ich würde zu einem Backup vor dem versuchten Upgrade zurückkehren, alle Maskierungsprobleme gezielt beheben und es mit der Standardmigration erneut versuchen.

1 „Gefällt mir“

Diese Probleme reichen Jahre zurück, daher ist ein Backup keine gute Lösung. Die gute Nachricht ist, dass sie es in letzter Zeit anscheinend nicht mehr oft benutzt haben (vielleicht 3 Mal in diesem Jahr?), also kann ich es vielleicht einfach entfernen.

Danke.

Das einzig potenziell Verwirrende ist, dass aus der Dokumentation, die ich sehe, nicht klar hervorgeht, dass man einfach zum neuen Upvote-Plugin wechseln kann und es „einfach funktioniert“ (es sei denn, es funktioniert nicht, aber es sieht so aus, als wäre das nicht die Schuld der neuesten Version eines der Plugins).

1 „Gefällt mir“

Wie im anderen Thema erwähnt, haben Sie im Wesentlichen ein Problem mit einer Migration im Upvotes Plugin. Die endgültige Lösung hier ist, dass diese Migration Ausnahmefälle behandelt, die bei Discourse-Benutzerdefinierten Feldern in großem Umfang auftreten können.

Ich versuche, die Gesamtzahl der Upvotes/Downvotes in einem Thema im Data Explorer zu zählen. Hat jemand den Datenidentifikator für Upvotes/Downvotes gefunden, um ihn in den Data Explorer einzugeben?

Dieses Plug-in ist seit dem letzten Discourse-Update defekt. Einige JS-Fehler, die die Nachrichtenlisten innerhalb von Themen brechen.

1 „Gefällt mir“

Danke für den Bericht. :+1: Ich werde das Tag austauschen.

1 „Gefällt mir“

Großartig, vielen Dank, dass Sie dieses Plugin erstellt haben. Es ist genau das, wonach ich für mein neues Projekt gesucht habe. Eine Website, die Informationen präsentiert und es Mitgliedern ermöglicht, diese zu bewerten.

Da dieses Plugin als broken markiert ist, empfehle ich die Verwendung von Discourse Post Voting

2 „Gefällt mir“

Dieses Plugin „befindet sich noch in der aktiven Entwicklung und kann sich häufig ändern“. Das erinnert mich an den berühmten Meme bei Google:

1 „Gefällt mir“