Детальные групповые права доступа для анонимных и авторизованных пользователей

Никаких проблем! Рад, что disallowed_groups окажется полезной. Я только что объединил этот PR.

Теперь, когда у нас есть disallowed_groups и resolve_group_memberships, мне нужно пройти по всем нашим официальным темам и компонентам. Предлагаю вам и @moin сделать то же самое для ваших собственных тем и компонентов, как только будет возможность, поскольку после внесения изменений в наши официальные репозитории я очень хочу двигаться дальше и перевести изменения, описанные в исходном сообщении, в статус stable.

Многие другие основные функции теперь зависят от anonymous_users и logged_in_users или используют их, и я очень хочу удалить группу everyone.

2 лайка

Привет, Мартин, вопрос:

Я только что выполнил полное обновление моего экземпляра и теперь добавляю параметр объекта disallowed_groups в свой компонент для групп everyone и anonymous_users, используя идентификаторы автоматических групп, указанные здесь:

Вот так:

      groups:
        type: groups
        disallowed_groups: "0|4"
        required: true
        resolve_group_membership: true
        validations:
          max: 20

Но в выпадающем списке групп компонента по-прежнему отображается группа everyone:

Что я делаю не так с параметром объекта? Я заметил, что даже без указания disallowed_groups в объектах группа anonymous_users по-прежнему не отображается (так что в данный момент список в моем компоненте выглядит одинаково, независимо от того, задаю я disallowed_groups или нет). Я протестировал с другими идентификаторами групп, и, похоже, я неправильно использую disallowed_groups (или синтаксис), так как он, кажется, не оказывает никакого эффекта, независимо от того, какие идентификаторы я использую.

4 лайка

Сегодня утром были некоторые проблемы с GitHub, поэтому изменения в disallowed_groups только сейчас попали в последнюю версию Commits · discourse/discourse · GitHub

Не совсем уверен, что это и есть проблема, но попробуйте обновиться ещё раз и посмотрите, сохраняется ли она. Если нет, дайте знать и укажите на ваш компонент темы (или это просто ваш боковой элемент группы?), чтобы я мог отладить :slight_smile:

1 лайк

Думаю, это было связано с тем, что предстоящее изменение было отключено на форуме, который вы использовали для тестирования. Я включил его, и теперь оно видно.


Я также обновил форум, и группы everyone и anonymous_users скрыты, как и ожидалось.


Для ясности: это я отключил изменение примерно две недели назад :innocent:

3 лайка

хаха :smiley: спасибо, Moin! я на самом деле забыл, что новая настройка гранулярных групп и так была в предстоящих изменениях.

Мартин, настройка объекта disallowed_groups работает идеально. мне очень нравится это изменение. ещё раз спасибо команде — отличное улучшение. :discourse: :chefs_kiss:

3 лайка