1

好的,我已经阅读了一段时间的cherrypy文档,但还没有找到一个简单的例子。假设我有一个简单的 hello world 站点,我如何存储数据?假设我想使用cherrypy将a = 1和b = 2存储到字典中。配置文件令人困惑。任何人都有一个非常简单的例子,可以在cherrypy中存储一个简单站点的值吗?

这是我的代码我做错了什么?我创建了一个 tmp 文件 c:/tmp,配置文件在哪里,或者我放在哪里?在我尝试添加配置之前,这段代码有效吗?

import cherrypy
import os

cherrypy.config.update({'tools.sessions.on': True,
 'tools.sessions.storage_type': "file",
 'tools.sessions.storage_path': "/tmp",
 'tools.sessions.timeout': 60})

class Application:

    def hello(self,what='Hello', who='world'):
        cherrypy.session['a'] = 1
        return '%s, %s!' % (what, who)

    hello.explose=True
root = Application()
cherrypy.quickstart(root)
4

2 回答 2

2

编辑你的配置文件:

[/]
tools.sessions.on = True
tools.sessions.storage_type = "file" # leave blank for in-memory
tools.sessions.storage_path = "/home/site/sessions"
tools.sessions.timeout = 60

在会话上设置数据:

cherrypy.session['fieldname'] = 'fieldvalue'

获取数据:

cherrypy.session.get('fieldname')

来源: http: //www.cherrypy.org/wiki/CherryPySessions

于 2010-03-14T23:33:04.893 回答
1

您将cherrypy配置为使用会话并将它们存储到文件中,例如以这种方式:

 cherrypy.config.update({'tools.sessions.on': True,
     'tools.sessions.storage_type': "file",
     'tools.sessions.storage_path': "/tmp/cherrypy_mysessions",
     'tools.sessions.timeout': 60})

(或者类似地在配置文件中),然后cherrypy.session是你想要的“每用户”字典,cherrypy.session['a'] = 1同样'b'是你如何在那里存储数据。

于 2010-03-14T23:31:38.250 回答