Welcher Rebake ist für das neue Autocomplete-Styling erforderlich?

Welche Änderungen hier, falls vorhanden, erfordern ein erneutes Backen von Beiträgen mit Hashtags?

Erfolgt ein erforderliches erneutes Backen automatisch durch Aktivieren dieser Option, oder gibt es einen expliziten Migrationsschritt zum erneuten Backen?

1 „Gefällt mir“

Nachdem ich die Funktion aktiviert hatte, habe ich einfach alle Beiträge über Rails neu gebacken.

Ich habe viele Beiträge, von denen die überwiegende Mehrheit nicht angefasst werden muss. Ich hatte irgendwie gehofft, dass es eine Möglichkeit gäbe, nur betroffene Beiträge neu zu backen, entweder explizit oder implizit.

3 „Gefällt mir“

Erneutes Backen kann sogar ältere Beiträge schädigen, scheint es:
Wie man potenzielle Probleme beim erneuten Backen aller Beiträge vermeidet?

2 „Gefällt mir“

Diese Funktion ist brandneu. Es gibt derzeit keine eingebaute Möglichkeit, alle Beiträge, die Kategorie-/Tag-Erwähnungen enthalten, neu zu verarbeiten. Ich werde hier aufmerksam verfolgen, was die Leute für notwendig halten und/oder welche Lösungen sie in der Zwischenzeit finden.

3 „Gefällt mir“

Gibt es vielleicht ein Muster, das wir verwenden könnten, um alle Beiträge erneut zu backen, mit Ausnahme derjenigen, die eine Einbettung/Onebox haben?

4 „Gefällt mir“

Wir möchten alle Beiträge neu backen, deren gebackene Darstellung mit class=\"hashtag\" übereinstimmt, soweit ich das beurteilen kann.

Ich glaube nicht, dass rebake_match hier helfen wird, da es den Rohtext abgleicht und es keine Option gibt, gegen den gebackenen Text in den vorhandenen Rails-Aufgaben abzugleichen. Daher wird dies meiner Meinung nach tatsächliche Codierung erfordern, entweder in der Rails-Konsole oder in einer neuen Aufgabe.

2 „Gefällt mir“

Etwas wie

 Post.where("cooked like '%class=\"hashtag\"%'").each do |p| p.rebake! end
6 „Gefällt mir“

Etwas sehr Ähnliches! Ich habe das gerade erfolgreich auf meiner Staging-Seite getestet.

Ich habe über die Verzögerungsoption für posts:rebake_match nachgedacht, aber wahrscheinlich spielt das keine Rolle.

Es besteht natürlich darauf, alle Bilder in den betroffenen Beiträgen erneut zu verarbeiten, was unnötig ist. Eine automatisierte Korrektur nur dafür könnte dies vernünftigerweise vermeiden, aber in der Zwischenzeit gibt es einen Weg nach vorne.

Ich möchte dies vielleicht durch umgekehrte Reihenfolge und Hinzufügen einer Verzögerung tun, wenn eine Website viele betroffene Beiträge hat.

1 „Gefällt mir“

@mcwumbly Jetzt, da 3.0 mit diesem als Hauptmerkmal angekündigt wurde, was würden Sie von einer Migration halten, die nur den Text korrigiert, ohne Bilder neu zu verarbeiten, oder alternativ, die es Ihnen ermöglicht, nur die betroffenen Beiträge mit einer Verzögerung neu zu backen, damit die Warteschlangen nicht mit der Neubearbeitung von Bildern verstopft werden?

3 „Gefällt mir“

@martin, kannst du hier ein paar Gedanken dazu teilen, wie du dieses Problem vielleicht angehen würdest?

Kurz gesagt, ich glaube, was die Leute idealerweise wollen, ist so etwas wie:

  • Wenn ich die neue Hashtag-Funktion einschalte, möchte ich eine Möglichkeit haben, den Stil all meiner alten Hashtags anzupassen, ohne den Inhalt bestehender Beiträge anderweitig zu ändern.

Und vielleicht auch:

  • Wenn ich sie ausschalte, möchte ich eine einfache Möglichkeit haben, das Gegenteil zu tun.
3 „Gefällt mir“

Das können Sie bereits tun.

Post.where("cooked like '%class=\\\"hashtag\\\"%'").update_all(baked_version: 0)

Dies wird dann im Hintergrund durch die geplanten Jobs gejagt.

Ich gehe davon aus, dass wir im nächsten Jahr unsere baked_version erhöhen werden.

5 „Gefällt mir“

Ich werde eine Rake-Aufgabe erstellen, um das zu tun, was @sam oben vorschlägt und was Self-Hosters ausführen können.

Ich glaube nicht, dass das notwendig ist, da wir dies jetzt zum Standard für neue Websites gemacht haben und die Option bald ganz entfernen werden. Wenn Leute es ausprobieren möchten, könnten sie die Einstellung aktivieren, ein paar Beiträge manuell in der Benutzeroberfläche neu backen und dann, wenn sie es nicht mögen, die Einstellung wieder ausschalten und dieselben Beiträge neu backen.

Es wird jedoch bald keine Wahl mehr geben.

4 „Gefällt mir“

Wissen Sie, ob die Idee farbige Kategorie-Links noch in Betracht gezogen wird?

1 „Gefällt mir“

Das wird sie, aber wir denken, dass dies einen größeren Umfang hat, als es auf den ersten Blick scheint, und es gibt noch eine Reihe von Design-Details zu klären, bevor es soweit ist, sodass es nicht sofort passieren wird.

Cool, das klingt gut!

4 „Gefällt mir“

Ich habe gerade einen Rake-Task dafür zusammengeführt:

bundle exec rake hashtags:mark_old_format_for_rebake

7 „Gefällt mir“

Könnten Sie bitte eine vollständige Idiotenhilfe zur Verwendung dieses Befehls bereitstellen?

Gibt es für einen Benutzer eine Möglichkeit, einzelne Beiträge zu ändern (z. B. durch Bearbeiten/Speichern mit einer kleinen Änderung)?

Danke.

Dies ist das übliche Muster für Rake-Aufgaben:

cd /var/discourse
./launcher enter app
bundle exec rake hashtags:mark_old_format_for_rebake
1 „Gefällt mir“

Das sollte funktionieren. Wenn Sie zum Personal gehören, können Sie auf den Schraubenschlüssel klicken und HTML neu erstellen.

1 „Gefällt mir“

Das hat gut funktioniert, danke. Für meine Zwecke schien es ein geringeres Risiko zu bergen als der Versuch mit der Rake-Aufgabe.

1 „Gefällt mir“