0
請看下代碼:CherryPy的傳遞函數之間的局部變量的根()
class Root:
def __init__(self):
self._Name = None
def index(self):
self._Name = getNameFromUser()
return mytemplate.render()
index.exposed = True
def foo(self):
myName = self._Name
//dosomething
return mytemplate.render(showmyName(myName))
foo.exposed = True
if __name__ == '__main__':
cherrypy.quickstart(Root())
這裏的問題是: 用戶1,用戶2和用戶3進來, 那麼當網站要顯示foo()的名稱它返回進入站點的最近用戶 我希望每個用戶都能看到他/她的名字。
In Fact I want to have local variable per user HOW to do that ?
所有通常的注意事項都適用 - *永遠不*信任用戶數據,*永遠*消毒它,即使您設置它 - 除非它永遠不會離開您的服務器,它可以被篡改。 –
那麼,我想要的是爲每個調用服務器的用戶設置一些類實例,然後我可以在類中創建一個本地變量。無論如何要這樣做? – Emax
@ user1034723 - 你想完成什麼,需要CherryPy類保持對用戶的引用?換句話說,爲什麼您無法獲取用戶的信息,將其存儲在會話中,然後從每個請求的會話中還原用戶的信息? –