nathank
(Nathan Kershaw)
1
我发现当用户开始创建投票时,他们会犯各种错误,而这些错误往往在投票进行到一半时才被发现。
不幸的是,对投票进行任何编辑都会导致投票数据被清除。这对于投票的完整性来说是可以理解的,但有时对于用户来说,一个简单的调整就能解决一个大问题,却会带来非常不好的后果。
然而,这可以通过 rails 控制台来完成。修改一个正在进行的投票可以改变投票的行为,同时保留数据,但 markdown 不会被触及。我不确定重新烘焙帖子时会发生什么,但怀疑投票会恢复到其原始行为。到那时,它可能已经过时且被遗忘了,所以这也不是什么大问题。
关键是找到帖子 ID;一个简单的方法是通过这个 SQL 查询来找到它(感兴趣的投票应该在顶部附近):
SELECT post_id as postid, *
FROM polls
ORDER BY id desc
这是一个投票修改的例子,用于当用户不小心将投票设置为单选而不是多选时:
Poll.find_by_post_id(75571).update(type:1,min:1,max:4)
你应该能够从查询和那个起点拼凑出其他的修改方法。
4 个赞
我已将此内容移至 Installation,而不是将其作为推荐指南,因为它属于“绕过 Rails 中的 UI”范围(类似于之前邮件中的内容)。
我认为我们可以为这类技巧提供某种折衷方案,因为它们很有用,但又带有一些“风险自负”的意味。我将稍后回来查看当前的意见。
1 个赞
Jagster
(Jakke Lehtonen)
3
也许再加一个标签会很有帮助,比如 #unofficial-tip 或 #dig-your-own-grave。然后类别可以更…贴合主题,但会有一个指示,表明存在知识需求和可能惨败的风险。
3 个赞
这是一个很好的建议。
我通常会运行一个主题来创建一个投票草稿大纲,并邀请高级成员提出改进意见或遗漏的选项。
然后我运行投票。
4 个赞
nathank
(Nathan Kershaw)
5
是的,我也是这么做的,尤其是对于非常重要的民意调查。
但我也想鼓励我的用户独立完成,这意味着在他们学习和不可避免地犯错时支持他们。
1 个赞
Zanbabe
(Suzanne)
6
为什么我们不能直接在用户界面中修复它?民意调查的完整性,等等等等。通常只是一个拼写错误,而让它留在那里让我很痛苦,但总比删除投票要好……我不应该被迫做出这种选择。
而且,如果管理员想稍后更改,为什么不行?有时民意调查只是为了好玩,而保持“完整性”绝对不是首要任务。整个事情即使允许稍后编辑也会崩溃的事实使得该设置毫无用处。我们应该能够设置允许编辑而不丢失选票……如果我们想这样运行我们的网站的话。
4 个赞