2014-10-05 25 views
1

我正在删除一个“mob”,然后重定向到索引页面。我的问题是,如果我使用$this -> dispatcher -> forward()当我进入索引页面(显示所有小怪)时,由于forward()的行为不刷新页面,删除的怪将仍然显示。调度程序在新页面上显示已删除的数据?

通常我通过使用response-> redirect()来解决这个问题,但是我不能在这里使用它,因为我使用调度器来发送像这样的参数。

return $this -> dispatcher -> forward(array('controller' => 'mob', 'action' => 'index', "params" =>array("alert" => "Mob deleted."))); 

我的问题是,什么是送我的参数也刷新页面,所以删除的对象调度后不会呈现最好的做法是什么?

回答

0

我得到的索引页(其中显示了所有小怪)删除暴徒将 还显示,由于forward()方法的不刷新页面的行为。

这并不完全正确,这与请求期间缓存数据库调用有关,或者您只是不刷新显示的数据。如果你为这两种行为提供了代码,我会说更多,但这不应该很难自行解决。您的索引操作必须在每次被调用时加载模型集,因此如果您在转发操作中删除了模型,那么该模型在转发操作中的连续加载中应该没有任何理由。

一般而言,转发比重新加载页面要好 - 你不需要向服务器发送另一个没有真正原因的请求。如果您需要使用重定向,可以通过多种方式在页面之间传递警报,例如将警报队列存储在会话或数据库中。 Phalcon有用于显示闪烁消息的Flash组件,允许使用会话方式。

相关问题