# 非公开类别中未授予徽章，“在此类别中允许授予徽章”已开启

**URL:** <https://meta.discourse.org/t/badges-not-granted-in-non-public-categories-despite-allow-granting-of-badges-in-this-category-turned-on/161043>\
**Category:** Feature\
**Tags:** badges\
**Created:** [2020年八月16日 15:38 UTC](https://meta.discourse.org/t/badges-not-granted-in-non-public-categories-despite-allow-granting-of-badges-in-this-category-turned-on/161043 "2020-08-16T15:38:39Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![alexandrutrifan](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/alexandrutrifan/32/186865_2.png) [@alexandrutrifan](https://meta.discourse.org/u/alexandrutrifan)\
**Post date:** [2020年八月16日 15:38 UTC](https://meta.discourse.org/t/badges-not-granted-in-non-public-categories-despite-allow-granting-of-badges-in-this-category-turned-on/161043/1 "2020-08-16T15:38:39Z")

</div>

在 Meta 上曾多次讨论过为受限类别授予徽章的问题，这是我能找到的 Sam 最近的一次回答：

> [@Restricting Access to categories](https://meta.discourse.org/t/restricting-access-to-categories/96365/4):
>
> Many of the automatic Badges by design are only granted on categories that are unrestricted, this is by design it would be a huge change of the badge system to amend this. It seems unfair for Sam to have the “Great Post” badge and then when you try to figure out what post, you can not see it. There is no way of changing this.

不过，他也曾设想过为此设置一个站点选项：

> [@Badges not being granted for restricted categories](https://meta.discourse.org/t/badges-not-being-granted-for-restricted-categories/68141/21?u=alexandrutrifan):
>
> I can see a site setting, default off, for “allow badges on restricted categories”

目前，我在类别设置中发现了这样一个字段：`允许在此类别中授予徽章`。  
这难道不就是允许为即使是私密类别也授予徽章的解决方案吗？还是说，类别的私密性最终会覆盖此类别设置？

如果是后者，我觉得这种行为非常令人困惑，因为用户在此明确希望在该类别中授予徽章，但实际上却没有授予任何徽章。

在我们的社区中，大部分活动都发生在某个私密类别中，用户无法获得他们应得的徽章，这实在令人遗憾。

---

<div class="post-metadata">

**Author:** ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)\
**Post date:** [2020年八月16日 20:20 UTC](https://meta.discourse.org/t/badges-not-granted-in-non-public-categories-despite-allow-granting-of-badges-in-this-category-turned-on/161043/2 "2020-08-16T20:20:30Z")

</div>

目前，Discourse 中无法基于私密分类授予徽章。这是有意为之的设计决策。

---

<div class="post-metadata">

**Author:** ![alexandrutrifan](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/alexandrutrifan/32/186865_2.png) [@alexandrutrifan](https://meta.discourse.org/u/alexandrutrifan)\
**Post date:** [2020年八月17日 06:39 UTC](https://meta.discourse.org/t/badges-not-granted-in-non-public-categories-despite-allow-granting-of-badges-in-this-category-turned-on/161043/3 "2020-08-17T06:39:16Z")

</div>

是的，我明白这是设计使然。

但我问题的另一部分呢？  
既然 Discourse 的核心在于透明和开放，那么拥有一个名为“允许在此类别中授予徽章”的设置却名不副实，确实令人困惑。

或许在类别设置中为工作人员添加一条提示，注明“在受限类别中将不生效”，会是个好主意？

既然我们在谈论透明度，我认为如果“徽章仅在公开类别中授予”仍是预期行为，那么在徽章页面上添加类似说明，Discourse 用户将会受益。

---

<div class="post-metadata">

**Author:** ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)\
**Post date:** [2020年八月17日 20:55 UTC](https://meta.discourse.org/t/badges-not-granted-in-non-public-categories-despite-allow-granting-of-badges-in-this-category-turned-on/161043/4 "2020-08-17T20:55:58Z")

</div>

> [@alexandrutrifan](#):
>
> “允许在此类别授予徽章”设置未能按说明生效，这令人困惑。也许在工作人员使用的类别设置中添加一条说明“对受限类别无效”会是个好主意？

这是一个非常好的观点，@sam，我们能否在几个地方优化提示信息，以减少支持请求的数量？
