对评论的回复似乎没有过滤垃圾邮件。 我们应该看到这条消息:
“你确定吗? 用户将无法再登录或发布,他们的内容将被隐藏,除了评论。” 好像错了
发生这种情况的例子: https :
看到这条评论的回复:
相反,它应该有一条这样的消息,它适用于常规评论(回复帖子的评论,而不是其他评论:
(这可能现在已经解决了……让我们编写一个测试来确认并修复测试中可能出现的任何故障):
对评论的回复不会过滤掉垃圾评论。 我们在几个地方使用这个replied_comments
方法,所以我们可能需要多次修复这个问题。
https://github.com/publiclab/plots2/search?q=replied_comments
我们不能在定义中这样做,因为它实际上是一个 ActiveRecord 关系,而不是我们可以添加过滤器的自定义方法: https :
我们应该过滤掉status = 0
的定义中, comment.replied_comments
,也为status = 4
显示上述消息。
然后,我们应该编写一些基本的测试:
这似乎在我的驾驶室里! 当我觉得自己的工作超前时,我可以将其分解为子问题。
我正在本地测试它以将其分解为 ftos,看起来问题已经解决。 有人也可以确认他们的情况也是如此...... @noi5e也许你在你的项目中的某个地方解决了它..
@cesswairimu嗯!! 我觉得是别人做的😅
@cesswairimu如果我不明白,有人可以为此编写一个测试吗? 这对于 FTO 来说有点太复杂了,但我认为编写测试可以教会申请人很多东西。 也许我们不应该在编写测试之前关闭这个问题
@noi5e我同意,我会将其更新为更多的测试编写问题。 谢谢
嗯,我不确定——也许测试可以先来确认它是否真的修复了?
因为我们只能根据使用情况进行过滤,而不是在has_many
定义中,所以似乎,我没有看到.where.not(status: 0)
上的这些:
你怎么认为?
谢谢,所有!!! 💯
啊,我猜在那些includes()
上,它必须被命名,所以也许... .where('comments.status != 0')
?
是的,我认为这是正确的,请参阅此处的用法:
@jywarren @cesswairimu @noi5e我可以为此编写测试吗?
@17sushmita是的,当然,请继续,将不胜感激!
对评论的回复似乎没有过滤垃圾邮件。 我们应该看到这条消息:
“你确定吗? 用户将无法再登录或发布,他们的内容将被隐藏,除了评论。” 好像错了
@jywarren说这条消息似乎有误是什么意思? 当版主试图将评论标记为垃圾邮件时,它不应该显示吗? 请提供更多背景信息。
@17sushmita我也有点困惑。 我想也许杰弗里的意思是文本在下图中显示为黄色,而不是Moderate first-time comment
? 如果是这样,那似乎是错误的。
在我们等待澄清的同时,您仍然可以继续编写测试。 我只是想在这里发布一些可能有用的建议。
首先,您可以将垃圾邮件/首次发布评论插入到测试数据库中,作为对另一条评论的回复:
nodes(node_name).add_comment({
uid: user_id,
body: comment_text
reply_to: parent_comment_id
status: 0 # comment status: 0 for banned, 4 for first-time poster (a moderator has to approve the comment)
})
然后从那里编写测试的其余部分,确保我们用来检索评论的方法没有收到状态为 0 或 4 的评论回复。
类似的东西! 你可能需要做一些研究。 如果您遇到困难,请务必在此处发表评论,或者需要一些指示来查看代码库中的位置。 我们是来帮忙的!
@noi5e ,非常感谢您的帮助😃️!! 我还需要澄清一点。 我是否需要为评论回复测试创建一个新文件或在/plots2/test/functional/admin_controller_test.rb或/plots2/test/system/spam2_test.rb或/plots2/test/functional/comment_controller_test.rb或还有其他文件吗?
@17sushmita我不是 100% 肯定,但我在想/test/functional/comment_controller_test.rb
。 我想到的另一个地方是评论的单元测试。 来自其他人的想法?
与此同时,在我们等待其他人权衡的同时,请随时开始处理这个问题。
@17sushmita我不是 100% 肯定,但我在想
/test/functional/comment_controller_test.rb
。 我想到的另一个地方是评论的单元测试。 来自其他人的想法?与此同时,在我们等待其他人权衡的同时,请随时开始处理这个问题。
谢谢,我开始编写测试,但我观察到的一件事是,即使将评论标记为垃圾邮件,它也会显示出来,并且根据软件,它是正确的,因为在将其标记为垃圾邮件时,它会生成@jywarren提到的除了评论。” 但是,显示垃圾邮件标记的评论真的合适吗?🤔️
显示垃圾邮件标记的评论真的合适吗?🤔️
我不这么认为!
你提到的这段文字很有趣:
“你确定吗?用户将无法再登录或发布,他们的内容将被隐藏,除了评论。 ”
这让我想到,也许在过去,我们没有审核评论。 我认为那段文字已经过时了。
无论如何,我想我们都同意我们绝对应该过滤所有评论! 所以我们可以避免@jywarren最初提到的垃圾邮件机器人。
我刚刚在本地测试了这个,在我看来这似乎还没有解决。 我们目前不过滤垃圾邮件或首次审核的评论回复......请记住,常规评论(不是对其他评论的回复)正在被过滤,因此这仅适用于回复。 (我测试了不是回复的评论,这些评论正在被审核)
将进一步分解这一点。 在本地,我创建了一个新帐户,并在笔记上发表了评论。 这是我发表评论时看到的。 到现在为止还挺好:
作为用户,_“等待社区版主批准”_ 消息让我认为我的评论不会公开显示。
但是,评论确实会公开出现! 当我在退出站点的隐身窗口中访问相同的注释时,该评论与用户 _cisco_ 所看到的完全一样:
禁止用户 _cisco_ 似乎也没有太大改变。 _“待批准”_ 消息消失,但仍可从隐身窗口查看评论:
所以是的,这肯定需要改变。
@17sushmita继续努力吧!
此外,如果您还没有找到它,我们已经在/test/fixtures/users.yml
创建了一个被禁止的 _spammer_ 用户
@noi5e这是一个非常清楚的解释。 我也在我的本地系统上进行了非常相似的测试,结果是一样的,这让我这么认为。 因此,我将首先删除垃圾评论,然后为它编写测试是否已修复。
顺便说一句,评论回复目前似乎没有出现在管理员的垃圾邮件审核仪表板中:
如果用户 cisco 发表评论回复,它不会让他们出现在活动用户中:
#9257 中提到的 Outreachy 垃圾邮件审核项目的潜在问题?
感谢@17sushmita和@noi5e如此彻底地@noi5e是完全正确的——我们只需要更简单的“中等首次评论”消息。
过滤垃圾邮件或首次审核的评论回复
和尚未解决的重要问题。
非常感谢你们的帮助,你们俩。 🎉
我会在新项目描述中记录垃圾邮件仪表板问题!!!
嗨@jywarren @noi5e ,很抱歉再次
是的,目前被禁用户的状态不会影响他们的可见性
注释。 谢谢!
2021 年 3 月 24 日,星期三,上午 8:17 Sushmita @ 。 * > 写道:
嗨@jywarren https://github.com/jywarren @noi5e
https://github.com/noi5e ,抱歉又问了,但我还有一个
困惑。 我们是否应该显示不是垃圾邮件但用户是垃圾邮件的评论
禁止? 遇到这种情况怎么办?—
你收到这个是因为你被提到了。
直接回复本邮件,在GitHub上查看
https://github.com/publiclab/plots2/issues/8854#issuecomment-805774370 ,
或取消订阅
https://github.com/notifications/unsubscribe-auth/AAAF6J4WSMFWF64K72GXR5TTFHJ6NANCNFSM4U4TWDIQ
.
顺便说一句,评论回复目前似乎没有出现在管理员的垃圾邮件审核仪表板中:
如果用户 cisco 发表评论回复,它不会让他们出现在活动用户中:
#9257 中提到的 Outreachy 垃圾邮件审核项目的潜在问题?
@noi5e我无法在本地重现评论回复问题。 我以新用户身份登录,发表评论回复,注销然后以管理员身份登录,然后我将评论回复标记为垃圾邮件。 我去了垃圾邮件审核页面,我在评论下找到了评论回复。
有什么我想念的吗?
嗨@TildaDares ,我相信这个问题已在#9381 中得到解决
谢谢@jcads
最有用的评论
@17sushmita是的,当然,请继续,将不胜感激!