是否可以为100个解决方案设置徽章?

是否可以为解决问题超过 100 个的用户自动添加徽章?

Solved 插件内置了 1、10、50 和 150 个解决方案的徽章——你只需要启用它们——https://meta.discourse.org/t/discourse-solved/30155#solved-badges-9

不过,要创建一个 100 个解决方案的徽章,你可以复制其中一个徽章的 SQL,更改阈值,然后将其添加为新的自定义 SQL 触发徽章。更多信息可以在 Creating triggered custom badge queries 中找到,以及如何在此处启用它 https://meta.discourse.org/t/badge-sql-can-no-longer-be-edited-by-default/47894。

2 个赞

谢谢你的回复,我现在明白了 :slight_smile:

但是当我测试这个查询时:

SELECT post_id, user_id, created_at AS granted_at
FROM (
         SELECT p.id AS post_id, p.user_id, pcf.created_at,
                ROW_NUMBER() OVER (PARTITION BY p.user_id ORDER BY pcf.created_at) AS row_number
         FROM post_custom_fields pcf
              JOIN badge_posts p ON pcf.post_id = p.id
              JOIN topics t ON p.topic_id = t.id
         WHERE pcf.name = 'is_accepted_answer'
           AND p.user_id <> t.user_id -- ignore topics solved by OP
           AND (:backfill OR p.id IN (:post_ids))
    ) x
WHERE row_number = 100

结果是:
只有 2 个徽章给了 2 个用户,但我知道还有其他用户拥有超过 100 个,但没有显示在查询结果中…

但是这个用户有 106 个解决方案:

还有一个问题,是否可以更改文本以适应我的语言?我不明白该怎么做。

徽章查询不计算自解决方案或已删除主题的解决方案,而目录查询目前会计算。这可能导致计数出现微小差异。

您可以通过在自定义文本中搜索 badges.solved 来更新已解决徽章的文本,这将显示所有相关字段::+1:

/admin/customize/site_texts?q=badges.solved

“自助解决方案”是什么意思?

谢谢,更新的文本没问题 :slight_smile:

\n\n此行:\n\n[quote=":portugal: | , post:3, topic:281520, username:barto_95"]\nAND p.user_id <> t.user_id -- ignore topics solved by OP\n\n[/quote]\n\n排除掉由主题创建者提供的解决方案。

好的,谢谢 :slight_smile:

1 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.