Die Diskussion wird fortgesetzt von ActiveRecord::RecordNotUnique auf idx_tag_users_ix1: Wie behebt man das?:
Der Fehler wurde reproduziert. Ich glaube, ich bin auf der Spur, diesen Fehler herauszufinden.
Schritte zur Reproduktion
-
Erstellen Sie einen Tag #foo
-
Beschränken Sie die Nutzung des Tags #foo auf Mitarbeiter
-
Erstellen Sie eine Gruppe Bar
-
Weisen Sie der Gruppe Bar eine Benachrichtigungseinstellung “Beobachten” für den Tag #foo zu
-
Lassen Sie einen nicht berechtigten Benutzer der Gruppe Bar beitreten
-
und ändern Sie seine persönlichen Benachrichtigungseinstellungen für #foo auf “Normal”
-
Ein nicht berechtigter Benutzer sollte eine Seite nicht mehr lesen können
Ich vermute, dass dies geschieht, da es zweimal bei verschiedenen Personen aufgetreten ist. Der Fehler sieht so aus: https://oxygen.offdem.net/logs/show/f70207d3affa8967932b9122d2be212b
Vielleicht ist der Titel etwas einschränkend. Ich denke, es hat mehr mit der Einschränkung von Tags auf Gruppen und persönlichen Benachrichtigungen zu tun.
Alle neuen Benutzer haben jetzt einen doppelten Eintrag, der aus der Konsole entfernt werden muss:
r = TagUser.connection.execute("SELECT user_id, tag_id, count(*) FROM tag_users GROUP BY tag_id, user_id HAVING count(*) > 1")
r.values.each { |uid,tag,_| TagUser.where(user_id: uid, tag_id: tag).last.destroy }
Ich bin mir nicht sicher, ob ich die Reproduktion richtig mache…
- Tag-Gruppe erstellen
#staff-tag-Tag in der Tag-Gruppe erstellen
- „Tags sind für alle sichtbar, aber nur die folgenden Gruppen können sie verwenden“ auf
staff setzen
- Gruppe erstellen
- Auf
/manage/tags #staff-tag zu „Watching“ hinzufügen
- Testbenutzer (TL2) zur Gruppe hinzufügen
- Bestätigen, dass
#staff-tag für den Testbenutzer in den Einstellungen/Tracking auf „Watching“ steht
- Navigieren Sie zu
/tags/staff-tag und ändern Sie das Glockensymbol zu „Normal“
Funktioniert alles?
Ich bin mir bei diesem Schritt nicht sicher. Ich habe die Gruppenbenachrichtigungen verwendet, um das Tag in den Benachrichtigungen für die Gruppe hinzuzufügen, die ich beobachte.
Ich meinte diese Seite hier:
Ich habe den Link vielleicht zu stark abgekürzt – /g/GROUPNAME/manage/tags
Oder muss ich es von einer anderen Stelle aus versuchen?
Ich weiß es wirklich nicht. Ich kann nicht viel Zeit dafür aufwenden, bevor OFFDEM. Vorerst führe ich die SQL-Anfragen aus, um das Problem für neue Benutzer zu beheben, sobald sie auftreten. Vielleicht habe ich ein Detail übersehen. Wie… Alle Kategorien sind standardmäßig stummgeschaltet, das könnte die Benachrichtigungen beeinträchtigen.
Das ist vielleicht relevant. Verwenden Sie dafür die Einstellung Alle Kategorien standardmäßig stummschalten?
1 „Gefällt mir“
Ja, ich benutze diese Einstellung.