想象一下你完成了一项任务,比如10秒。现在,经过10秒后,必须将用户重定向回具有该任务结果的特定页面。即使用户正在查看另一个页面,也必须进行此重定向。
您可以想象,模型中有一个开始和结束时间,用于显示事件何时开始以及何时结束。我的问题是,你会如何设计,同时也仔细研究安全性?
我目前这样做:我有一个全局的before_filter,它有一个方法可以不断检查事件是否已经完成,如果是,则将会话变量设置为1。如果确实已完成,则重定向到GET操作,该操作仅在会话变量设置为1时才可访问。
后一个动作正在做我需要的事情并将信息呈现给用户。你认为我正确地处理它,或者你会做不同的事情吗?
答案 0 :(得分:1)
听起来你的设计还可以。
根据您的要求,您可以通过立即渲染视图然后使用javascript设置正确的URL来跳过重定向。以下是有关如何执行此操作的信息:How does GitHub change the URL but not the reload?。