它们确实是系统徽章,无法通过用户界面进行编辑(但可以看到)。该行需要通过 PR 添加。![]()
3 个赞
介意我尝试提交那个 PR 吗?我认为我只需要更改 discourse/lib/badge_queries.rb 第 156-167 行的 SQL。
3 个赞
您好。我的徽章昨天被移除后,今天又突然回来了。有人能修复这个问题吗?
1 个赞
查询每天都会运行,而且您仍然“符合条件”,他们就会回来。
我们将不得不每天手动删除它们,直到错误被修复,这是不现实的。
我已经检查过了,我们可以让这个 pr-welcome
(您需要完成所有三项)
4 个赞
明白了,谢谢。我应该能做到。
而且我不明白为什么我需要做3。如果我正确理解了函数,那个用于邀请链接的函数会返回计数。
3 个赞
我没有看代码,所以你可能是对的。 ![]()
3 个赞
def self.invite_badge(count, trust_level)
<<~SQL
SELECT u.id user_id, current_timestamp granted_at
FROM users u
WHERE u.id IN (
SELECT invited_by_id
FROM invites i
JOIN invited_users iu ON iu.invite_id = i.id
JOIN users u2 ON u2.id = iu.user_id
WHERE i.deleted_at IS NULL AND u2.active AND u2.trust_level >= #{trust_level.to_i} AND u2.silenced_till IS NULL
GROUP BY invited_by_id
HAVING COUNT(*) >= #{count.to_i}
) AND u.active AND u.silenced_till IS NULL AND u.id > 0 AND
(:backfill OR u.id IN (:user_ids) )
SQL
end
这是它。看起来只有 1。并且查看了整个文件,没有其他与邀请相关的内容。
已创建 PR
5 个赞
查看 PR(请记住,PR 不是我的强项),看起来你通过将 #{count.to_i} 更改为 1 来硬编码它,使其仅为 Promoter 版本?
我上面的示例只是一个概念验证,需要进行调整以适应。![]()
(另外,看看那个 onebox 中的文字,我是“JammyDodger”,而不是“Jammy Dogger”……
)
8 个赞
抱歉,我已修正您的姓名
4 个赞
感谢您的贡献!我已合并您的 PR。
另外,一个小小的说明是,我们通常要求对修改进行测试,但鉴于之前没有测试,我们将直接合并并稍后补上。
希望未来能看到您更多的贡献 ![]()
8 个赞
此主题在 2 天后自动关闭。不再允许回复。