Невозможно изменить member_visibility_level для автоматических групп

Изменить видимость участников автоматических групп через интерфейс управления группами невозможно. Более конкретно: интерфейс позволяет выбрать новое значение и при нажатии кнопки «Сохранить изменения» с энтузиазмом сообщает «Сохранено!», однако запрос молча игнорируется бэкендом.

Похоже, это регрессия, которая была внесена в метод group_params() контроллера GroupsController в FIX: Add `errors` field if group update confirmation by udan11 · Pull Request #16260 · discourse/discourse · GitHub

2 лайка

Только что столкнулся с этим и меня смущает, что я могу изменить настройку видимости, но затем она игнорируется без каких-либо уведомлений.

Разве нет способа показывать администраторам и уровни доверия всем на странице групп?

Похоже, что существует версия с запросом на добавление функции #feature с дополнительным обсуждением по адресу:

2 лайка

Я только что протестировал это и не могу воспроизвести проблему в точности, но, возможно, мы тестируем разные вещи.

Здесь, на meta, я изменил видимость группы trust_level_4 с «Зарегистрированных пользователей» на «Всех». До изменения переход по адресу https://meta.discourse.org/g/trust_level_4 возвращал ошибку 404, а после изменения — список участников группы. Я уже откатил это изменение здесь, поэтому для анонимных пользователей этот маршрут снова возвращает 404, но изменение видимости работает. Также проверил то же самое локально.

Проблема ли в том, что после изменения видимости группа не отображается в /groups для обычных пользователей? Это сделано для уменьшения загромождения (это не недавний регресс, так было задумано в 2017 году)… Обычные пользователи не могут вступать в автоматические группы, поэтому нет особого смысла включать их в каталог, даже если видимость это позволяет.

1 лайк

С учётом этого я думаю, что мы можем закрыть версию этого вопроса как bug и сосредоточить обсуждение на версии Respect the visibility settings of all automatic groups как #feature. :+1:

2 лайка

Возвращаю тему, так как, возможно, я запутался в том, что именно касается этой ошибки… :slight_smile:

Мой базовый сценарий воспроизведения:

  • Перейдите на g/trust_level_1/manage/interaction
  • Измените настройку «Кто может видеть участников этой группы?» на любое значение, отличное от «Все», и сохраните
  • Обновите страницу

Ожидаемый результат: изменение сохраняется
Фактический результат: настройка возвращается к значению «Все»

2 лайка

Спасибо @mdoggydog, я неправильно прочитал отчёт. Как и @JammyDodger, я могу воспроизвести проблему с выпадающим списком «Кто может видеть участников этой группы?».

Исправление находится на ревью по адресу

4 лайка

Ура, спасибо @pmusaraj — исправление, похоже, даже работает! :wink:

Существует более глубокая структурная ошибка, которую всё ещё нужно исследовать и исправить: тот факт, что пользователь может нажать «Сохранить» на фронтенде, и фронтенд сообщит «Сохранено!», даже если бэкенд ничего не сохранил. Я не уверен, куда и как сообщить об этом, но это технический долг, который следует где-то отслеживать до момента исправления.

3 лайка

Эта тема была автоматически закрыта через 2 дня. Новые ответы больше не принимаются.