类不刷新第二个url调用

问题描述:

我有一个网页链接到一个网址eg./customer/showitem?id=7,它显示在子窗口中使用方法showitem()中的特定客户的详细信息一流的客户。该方法可以设置控制加载页面时显示的警报的客户类属性的值(例如,self.onloadalert =“Warning!Customer is debt”)。类不刷新第二个url调用

如果客户窗口关闭,然后再次打开(可能使用不同的ID,例如。/ customer/showitem?id = 8),新客户的详细信息会正确显示,但上面的onload警告仍然出现,因为客户自上次调用以来,.onloadalert没有改变(我已经通过调试验证了它)。它看起来好像即使该方法在第二次url调用时从头开始运行,客户类(及其所有属性值)仍然会从先前的调用中继续存在。

我可以通过在showitem()的开始处重置它来解决此特定属性的问题,但其他customer.attributes呢? (特别是如果有很多) - 我不能通过名称重新设置它们!我如何确保类为每个url调用重新加载(因此重新初始化)?

我使用CherryPy(3.20rc1),但我猜这个问题适用于其他使用相同/ class /方法?params url格式的框架。

任何帮助,将不胜感激。

艾伦

+0

客户类或客户对象? – 2010-07-23 01:53:09

+0

好点,我的意思是客户对象仍然是从以前的呼叫持续。 – 2010-07-23 02:19:06

如果要将数据持续只是一个请求,把它粘在cherrypy.request对象:

cherrypy.request.onloadalert="Warning!" 

cherrypy.request对象被完全毁坏,recreeated为每个请求,即使它是安全的可导入。弄清楚如何作为读者的练习。 ;)

+0

谢谢fumanchu,我不知道我可以将其他属性添加到cherrypy请求对象。问候。 – 2010-07-25 15:51:32