2013-04-22 56 views
0

在我们的应用程序中使用juggernaut和redis,因为其中的双重呈现错误被抛出,因此向我们的rails控制器发送多个请求。由于来自后台的多个请求导致的双重呈现错误

我们在我们的导轨控制器中渲染:nothing => true。

任何想法来解决这个异常?

我们正在使用rails 2.3。

控制器代码:

def store_status 
    @store = Store.find params[:id] 
    @store.update_attributes(:stauts => 1) 
    render :nothing => true 
end 

编辑:

对不起,这种双重渲染错误的原因是因为一些异常通话结束后提出来呈现:没什么=>真正的这是在我的应用程序逮住控制器。 救援异常块包含另一个渲染,因此引发了双重渲染错误。 任何想法来查找是否已经有渲染,然后在救援块中渲染?

+2

发送多个请求应_not_抛出一个双重渲染错误渲染之前重定向,为每个请求应该得到它自己完整的响应。你的行为是什么样子的? – 2013-04-22 06:55:55

+0

在行动中我们只是在数据库中存储一些数据并调用render:nothing => true。 – user001 2013-04-22 06:58:01

+0

你将不得不详细说明 - 到目前为止还没有太多的东西可用 – 2013-04-22 07:45:50

回答

0

对不起的原因双重渲染错误是因为有些例外是调用渲染后提出:没什么=>真正的这是在我的应用程序控制器逮住。 救援异常块包含另一个渲染,因此引发了双重渲染错误。 任何想法来查找是否已经有渲染,然后在救援块中渲染?

解决方案:

使用erase_results清除以前的渲染或毒害的耐受方法

0

尝试return render :nothing => true

+0

这没有奏效。 – user001 2013-04-22 10:14:35

+0

对不起,这个双渲染错误的原因是因为在渲染调用之后引发了一些异常:nothing => true,这在我的应用程序控制器中捕获。 救援异常块包含另一个渲染,因此引发了双重渲染错误。 任何想法来查找是否已经有渲染,然后在救援块中渲染? – user001 2013-04-24 05:24:26

相关问题