ondrej
4. Februar 2026 um 19:47
1
Auf der Admin-Seite eines Benutzers, wenn Sie nach unten zum Abschnitt „Gruppen“ scrollen und versuchen, den Benutzer zu einer benutzerdefinierten Gruppe hinzuzufügen, wird die Schaltfläche angezeigt, wie Sie im Bild unten sehen können.
Wenn Sie jedoch darauf klicken, verschwindet sie nicht, was den Eindruck erweckt, dass die Aktion nicht abgeschlossen wurde. Aber wenn Sie die Seite aktualisieren, wurde der Benutzer tatsächlich zur Gruppe hinzugefügt, aber die Benutzeroberfläche spiegelt dies nicht wider.
2 „Gefällt mir“
Eine weitere Seite, die sich besser für eine ordnungsgemäße Refaktorierung zu Glimmer eignen würde
In der Zwischenzeit hier der Fix
main ← fix/admin-user-custom-groups-save
opened 11:13PM - 07 Feb 26 UTC
The approve/reject buttons for custom group changes on the admin user page would… remain visible after saving, even though the changes were persisted successfully. Removing a group also failed to update the UI.
Three issues in the reactivity chain caused this:
1. The `@filter` computed macros (classic Ember) on the AdminUser model did not react to `@trackedArray` mutations. Replaced `customGroups` and `automaticGroups` with native getters so they participate in Glimmer autotracking.
2. The controller's `groupAdded()` and `groupRemoved()` wrappers did not return their promise chains, so `await` in `saveCustomGroups()` resolved immediately before the API calls completed and before the groups array was updated.
3. The controller's `customGroupIds`, `customGroupsDirty`, and `automaticGroups` used `@discourseComputed` which could not track changes from native getters on the model. Converted these to native getters and made `customGroupIdsBuffer` `@tracked`.
Additionally, `saveCustomGroups()` now awaits each operation sequentially and calls `resetCustomGroups()` on completion to sync the buffer with the updated group list, clearing the dirty state.
Note: only the properties involved in the groups reactivity chain were converted to modern Glimmer patterns. The rest of the controller and model still use classic Ember (`@discourseComputed`, `this.set`, etc.) and can be modernized separately.
Ref - https://meta.discourse.org/t/395210
1 „Gefällt mir“
zogstrip
Geschlossen,
14. Februar 2026 um 07:00
5
Dieses Thema wurde nach 2 Tagen automatisch geschlossen. Neue Antworten sind nicht mehr zulässig.