/about 中管理员与版主列表令人困惑

有些人既是管理员又是版主,而其他人则仅是管理员或仅是版主。

当用户访问 /about 页面时,无论其是否担任版主,所有管理员都会显示在“我们的管理员”部分。

有些管理员可能不希望担任版主。他们负责技术方面的工作并拥有管理员权限,但不希望承担 moderating 的责任(我们可能也不希望他们参与此类事务)。

How to hide admins from /about page - #7 by cpradio 与此相关,但我并非特指隐藏任何人,而是希望明确标识哪些管理员同时也是版主。

或许可以将所有列出的成员统一归入“工作人员”类别,然后通过一个小标记或徽章来标识其身份是管理员、版主,或两者兼具(对于同时具备两种身份的人,应同时显示)?

真正的目的是让用户能够轻松识别在需要版主协助时应联系哪些人员(尤其是针对一种不太可能的情况:用户对版主本身的违规行为有疑虑,并希望联系另一位版主)。我不希望用户最终联系到那些不愿处理此类问题的管理员。

4 个赞

I think you are making a fair point, but the problem is that the terms “moderator” and “admin” have a different (more technical) meaning in discourse. They simply refer to two levels of privileges: admins have all privileges and mods have limited privileges (only what they need to to their moderation job).

The discourse team will correct me if I’m wrong, but I can’t think of any easy way to achieve what you want by modifying the /about page.

However, what you could do is create new groups that correspond to your definition of admin and mod (or only mod) and direct people to that group’s membership list.

Actually, it doesn’t matter that admins have 100% of the power that mods have, they are separate groups. I can see as an admin by looking at the other admins — some are in the mod group and some aren’t.

So, there’s no need to change anything besides the display of the About page. Certainly there’s no need for new groups.

You’re right, I was making some wrong assumption and wrote nonsense.

In that case I don’t understand your problem. The about page already distinguishes between mods and admins…

If a person is a mod and and admin, they are only shown in admins. If someone is not a mod but is an admin, they are shown there too.

In short: there’s nothing on /about that allows people to see which of the admins are mods

2 个赞

I feel like Discourse team has a plugin that hides users from being listed on that page… maybe one of them can speak to it.

I totally agree. I am an admin on dozens of sites but am not a moderator on any (maybe one?).

Several times I have been contacted by a user about something that I could not help with or had the site owner express concern that I was listed on the about page.

2 个赞

We do. We’re admins on lots of hosted sites for support reasons but we don’t show up on the About page.

1 个赞

Hiding people entirely would only sorta solve my concern (it would help avoid contacts to people who don’t want it, but they’d lose being honored as part of the staff). I want clarity about the admins who are mods so that it’s obvious that they are options when mods specifically are needed. I think I don’t want to hide the non-mod admins though. I’d still like them to be honored as being staff in our case.

I think the About page just could use a rethinking in how staff are presented overall. I could see several different ways to do it. One thought: flip the current approach, just maybe show all mod+admin folks under mod, but give them a special badge noting that they are admins. Another thought: Show it like a Venn diagram somehow so that everyone is in a big list but a section are highlighted mods and a section admins and show an overlapping section. I’m sure good UX folks could have other ideas.

The goal is just to have more clarity for the multiple purposes that we show who the staff are (knowing who to contact for things, honoring people for their work and positions…)

1 个赞

Just found this

It should help give you an idea on how it could be implemented in a plugin.

4 个赞

Is this something that can be released?

1 个赞

We will never release that plugin since it’s our secret sauce, but that feature is easy to do :wink:

add_to_serializer(:about, :admins) do
  object.admins.reject do |user|
    # your criteria for removing users from the admins list
  end 
end
7 个赞

From the I-don’t-really-understand-serializers department. . .


  # remove pfaffman from admins
  puts "now Adding to serializer"
  add_to_serializer(:about, :admins) do
    object.admins.reject do |user|
      puts "USER::: #{user}"
    end
  end
  puts "end Adding to serializer"

I get no output between “now…” and “end…”.

I thought that # your criteria for removing users from the admins list would seem like I’d put something like user.username=='pfaffman' in there, but it doesn’t seem like anything is happening. Except that now no admins are displayed.

edit: This also removes moderators (I tried false too).

  add_to_serializer(:about, :moderators) do
    true
  end
2 个赞

add_to_serializer is a function which takes three arguments.

  1. Name of the serializer (:about)
  2. Name of the variable you want to serialize (:admins)
  3. A block. Think of this as a section of code that will be executed at some point in the future

So that is expected. The block you gave to add to serializer has not been executed yet. In fact, it will only be executed when the serializer is used. If you go and request about.json, you should then see "USER::: #{user}" appear in your console. And it will appear every single time you make the request.

Yes, that sounds like it should work. Remember it is case sensitive.

5 个赞

帖子已拆分为新主题:关于页面是否可以区分版主和类别版主?

我认为现在更清楚了,因为同时是管理员和版主的也会同时显示在两个列表中

3 个赞