Tag hinzufügen, wenn eine von 4 anderen Tags im Thema vorhanden ist

Hallo zusammen,

Ich habe kürzlich mein Forum umstrukturiert und nutze nun Tags.

Eine Sache, mit der ich kämpfe (ich weiß, es ist nicht nativ, aber vielleicht gibt es ein einfaches Plugin?), ist, dass ich, wenn ein neues Thema mit dem Tag “sync1”, “sync2”, “sync3” oder “sync4” erstellt wird, auch den Tag “apim” anhängen muss. Weiß jemand, wie ich das machen kann?

Meine Ruby-Kenntnisse lassen leider zu wünschen übrig.
Ich habe beides gesehen:

und

Aber ich bin mir nicht sicher, wie ich das anpassen kann, um einfach zu prüfen, ob eines dieser 4 Tags im Thema vorhanden ist, anstatt der Prüfungen, die diese Beispiele derzeit haben.

Grundsätzlich, wenn eines der Tags in Pink im Thema vorhanden ist, sollte das Tag in Grün automatisch hinzugefügt werden.

DiscourseEvent.on(:topic_created) do |topic|
  guardian = Guardian.new(Discourse.system_user)
  required_tag_names = [”sync1”, “sync2”, “sync3”, “sync4”]
  DiscourseTagging.tag_topic_by_names(topic, guardian, [\"apim\"], append: true) if topic.tags.exists?(name: required_tag_names)
end

Sie benötigen diesen :arrow_up: Code.

Bearbeiten: Sie können dies auch erzwingen, indem Sie eine Tag-Gruppe hinzufügen und „apim“ als übergeordnetes Tag festlegen. In diesem Fall können Benutzer „sync“-Tags erst auswählen, nachdem sie das übergeordnete Tag „apim“ ausgewählt haben.


Ich denke, es wäre nützlicher, wenn wir Benutzern erlauben würden, zuerst untergeordnete Tags auszuwählen, und dann fügen wir das übergeordnete Tag automatisch hinzu :person_shrugging: Die meisten Endbenutzer werden nichts von den Anforderungen für übergeordnete Tags wissen.

2 „Gefällt mir“

Ausgezeichnet, normalerweise versuche ich, diese Dinge selbst herauszufinden, aber Ruby ist nicht meine Spezialität und ich hatte das Gefühl, dass jemand in wenigen Minuten ein Beispiel haben würde :slight_smile:

Jetzt muss ich nur noch herausfinden, wie ich das zu einem Plugin hinzufüge, aber ich bin sicher, dass es ziemlich einfach ist.

Ich stimme zu, dass die Auswahl eines Kind-Tags, das ein Elternteil hinzufügt, manchmal ein bevorzugtes Ergebnis sein könnte.

Vielen Dank für Ihre Hilfe.

EDIT: Plugin erstellt und funktioniert wie vorgesehen, vielen Dank für Ihre Hilfe!

1 „Gefällt mir“

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.