Ich räume einige Tags auf und hatte bisher keine Probleme, bis auf diesen Tag, an dem 2400 Themen angehängt sind. Ich erhalte die generische Meldung „Entschuldigung, ein Fehler ist aufgetreten.“ und nichts in den Protokollen. Kann ich dies im Backend löschen oder gibt es noch etwas anderes, das ich versuchen kann? Es hat keine Sonderzeichen, es ist einfach ig
Es sollte möglich sein, es über die Rails-Konsole zu löschen, aber Sie könnten versuchen, es zuerst in Stapeln von Themen zu entfernen, um es sauberer über die Benutzeroberfläche zu erledigen?
Danke, aber ich sehe keine Möglichkeit, dies in großen Mengen zu tun. Ich kann alle Tags entfernen, aber es gibt keine Option, einen einzelnen Tag zu entfernen, wenn Themen mehrere Tags haben.
Ich suche nach einer Möglichkeit, 2 Tags zu löschen, eines hat 5818 Einträge und das andere 1604.
Diese stammen aus einem XenForo-Import und werden nicht benötigt.
Ich denke, es gibt zwei Möglichkeiten, diese Tags von ihren zugehörigen Themen in der Rails-Konsole zu entfernen, wobei eine “sanfter” ist als die andere. Es ist eine gute Idee, zuerst ein Backup zu erstellen – siehe hier bezüglich der Ausführung von Rails-Befehlen: Administrative Bulk Operations.
Geben Sie für jedes Tag die Rails-Konsole ein:
cd /var/discourse
./launcher enter app
rails c
Suchen und entfernen Sie das Tag aus seinen Themen
TAG_NAME = "your_tag_name" # Ersetzen Sie dies durch Ihren Tag-Namen
TAG = Tag.find_by(name: TAG_NAME)
Topic.joins(:tags).where(tags: { name: TAG_NAME }).each do |topic|
topic.tags.delete(TAG)
topic.save
end
Wiederholen Sie dies für das zweite Tag
Dann sollten Sie diese Tags über die Benutzeroberfläche entfernen können
Alternative schnellere Methode, die riskanter ist (ich würde den obigen Weg selbst gehen)
Aber anstatt Schritt 2 und 4 können Sie dies auch für jedes Tag tun, nachdem Sie die Rails-Konsole eingegeben haben.
Vielen Dank, es hat beim ersten Versuch geklappt. Ich habe den ersten Weg gewählt und dann die Tags über die Benutzeroberfläche gelöscht, als sie nirgendwo mehr zugewiesen waren.