Разрешить, если не заданы разрешённые группы

Привет, у меня возникла сложность с настройкой: «утверждать, если не входят в разрешённые группы».

Вот моя настройка (TL1–TL4 настроены, скриншот на французском):

Исходя из этой настройки, я ожидал, что посты пользователей TL2 не будут требовать утверждения, но они требуют. Возможно, я неправильно понимаю эту настройку, или же другая настройка мешает достижению моей цели: чтобы TL1 и выше не требовали утверждения? Спасибо за ваши идеи.

Вы пробовали использовать только TL1? Более низкие уровни наследуются (т.е. TL3 = TL2 + TL1 + TL0)

У меня эта настройка работает как ожидается. Я установил её на TL1, как у вас. Когда мой тестовый пользователь был на уровне TL0, его пост требовал одобрения.

Screenshot 2024-09-19 at 5.42.54 PM

Как только я изменил настройку на TL2, он смог публиковать (при этом старый неопубликованный пост остался в очереди).

Вот полезная статья по этой теме:

Я попробую только с TL1. Но я не понимаю, почему добавление верхних уровней будет мешать этой логике.

Можете проверить настройки уровня доверия вашего тестового пользователя? Я только что протестировал то же самое с разрешёнными уровнями TL1, TL2 и TL3, но мой тестовый пользователь с уровнем TL0 всё равно требовал одобрения. Не должно иметь значения, если вы добавите более высокие уровни.

Хорошо, вот что я сделал:

  1. Настроил «одобрять, если не входит в разрешённые группы» только для групп: администраторы, модераторы и TL1.
  2. С моего тестового аккаунта, который относится к группе TL1, я создал тему, и она попала в очередь на одобрение.

Насколько я понимаю логику, так быть не должно, верно?

Примечание: моя настройка «одобрять новые темы, если не входит в разрешённые группы» совпадает с «одобрять, если не входит в разрешённые группы».

Ой, подождите, это была первая тема от этого пользователя, но вторая тема не попала в очередь, пока всё хорошо.

Так что я перевёл моего тестового пользователя на TL2 и опубликовал новую тему, и… она попала в очередь на одобрение… А не должна была, я совершенно растерян :crazy_face:

Я безнадежный случай :woozy_face: Временно я буду одобрять все сообщения и темы.

Спасибо за ваш интерес в любом случае!

Я до сих пор не понимаю, в чём проблема. Я также проверил настройки для approve new topics unless allowed groups, и они работают как ожидалось.

У меня следующие настройки:

Мой тестовый пользователь с уровнем TL1 не может создавать новые темы, но всё ещё может отвечать на сообщения, что полностью соответствует ожиданиям. Пользователю с уровнем TL0 требуется одобрение как для ответов, так и для создания новых тем, тогда как пользователь TL1 может отвечать, но не может начинать новые темы без одобрения. Пользователи с уровнем TL2 и выше могут делать и то, и другое без одобрения.

Возможно, описание настройки немного запутанное из-за двойного отрицания в словах «unless» и «cannot». :thinking:

Да, используя ваши настройки, ответы пользователей TL2 требуют одобрения, но этого быть не должно.

Хм… Возможно, в настройках категории стоит опция «Новые сообщения требуют одобрения»? Если так, то, если я не ошибаюсь, разрешение категории будет иметь приоритет над настройками сайта.

Вы включили разные настройки утверждения?
Например, настройку сайта «Количество утвержденных постов» или настройки категории «Требовать утверждения модератором всех новых ответов» и «Требовать утверждения модератором всех новых тем»?

Это также сбивает с толку, потому что предполагается, что человек, настраивающий эту опцию, понимает внутреннюю реализацию групп уровней доверия. Если воспринимать текст буквально, можно предположить, что настройка по умолчанию означает, что любые посты пользователей, которые не являются администраторами, модераторами или пользователями уровня доверия TL0, требуют одобрения. На самом деле эта настройка определяет минимальный уровень доверия, при котором одобрение не требуется.

Значение по умолчанию (администраторы, модераторы, trust_level_0) настраивает сайт так, что любой пользователь может публиковать сообщения без одобрения (игнорируя настройки, упомянутые в постах @Heliosurge и @Moin). Чтобы требовать одобрения постов пользователей TL0, нужно удалить trust_level_0 из настройки и добавить trust_level_1 и так далее…

Человек, настраивающий эту опцию, должен знать, что принадлежность к группе уровня доверия автоматически включает принадлежность ко всем группам с более низкими уровнями. В описании настройки это неясно: «Посты, созданные пользователями, не входящими в эти группы, должны быть одобрены».

Полностью согласен. Discourse иногда имеет столько перекрывающихся слоёв, что это может быть пугающим и довольно сложным, чтобы разобраться во всём как следует и достичь желаемых результатов.

Согласен с последними комментариями, это сложно понять. Я проверю все свои связанные настройки.

Мои настройки:
approve post count = 1
Две другие настройки в моих категориях установлены в «нет».

Конечно, я бы хотел, чтобы настройка называлась просто «Группирует сообщения, не требующие одобрения». И аналогично для другой настройки: «Группирует темы, не требующие одобрения».

Примечание: для носителей других языков, таких как я, двойное отрицание становится дополнительным препятствием.

Думаю, именно поэтому первый пост пользователя с уровнем доверия 1 требует одобрения, даже если вы установили «одобрять, кроме уровня доверия 1».

Да, но в моём случае опубликованные посты не являются первыми, значит, есть ещё что-то, что работает неправильно.

На вашем сайте может возникать множество различных проблем, и помощь вам превратится для нас в игру «бей крота» на неопределённый срок.

Моя рекомендация вам — отменить большинство изменённых вами настроек сайта и вернуть их к значениям по умолчанию, чтобы посмотреть, как всё будет работать. Для большинства сообществ настройки по умолчанию вполне подходят, и менять их не нужно.

Если в вашем конкретном случае потребуется внести некоторые изменения, например, чтобы предотвратить регистрацию спамеров и их публикации, не меняйте слишком много настроек одновременно. Это упростит диагностику любых возникающих проблем.

Я согласен, что описания многих настроек сайта запутаны и их можно улучшить. Мы приветствуем конкретные предложения по улучшению формулировок, особенно от людей, для которых английский не является родным и которые путаются в двойных отрицаниях, необычных английских выражениях и так далее.

@simon мы уже пытались исправить описания в некоторых местах, например, в настройке personal message enabled groups.

Разрешить пользователям из этих групп СОЗДАВАТЬ личные сообщения. ВАЖНО: 1) все пользователи могут ОТВЕЧАТЬ на сообщения. 2) Администраторы и модераторы могут СОЗДАВАТЬ сообщения любому пользователю. 3) Группы уровней доверия включают более высокие уровни; выберите trust_level_1, чтобы разрешить TL1, TL2, TL3, TL4, но не разрешать TL0. 4) Настройки взаимодействия групп переопределяют эту настройку при обмене сообщениями с конкретными группами.

Если мы сделаем это повсюду, это значительно увеличит объём текста и усилит ощущение, что Discourse чрезмерно сложен. Возможно, решением здесь будет добавить валидацию, чтобы можно было добавлять только один уровень доверия. Если вы попытаетесь добавить больше одного, появится предупреждение, объясняющее, как работают уровни доверия и права доступа.

Верно, здесь действительно две проблемы: моя и уточнение по Discourse. Спасибо за четкое объяснение.

Путаница возникает из-за того, что уровни доверия воспринимаются как группы, а не как «уровни». Семантически очевидно, что если у человека есть определённый уровень доверия, то у него есть и более низкие уровни. Если только вы не знакомы с внутренней реализацией, неочевидно, что если пользователь «входит» в группу уровня доверия, то он также входит и в группы более низких уровней доверия.

Это, вероятно, принесло бы больше хлопот, чем пользы, но было бы понятнее, если бы такие настройки были разделены на две отдельные:

  • «утверждать, если уровень доверия ниже» (по умолчанию TL0)
  • «утверждать, если группа не входит» (по умолчанию «все»)

Значения по умолчанию текущей настройки подходят для большинства сайтов, поэтому сомневаюсь, что эту настройку часто приходится менять.