我试着在我正在做的一个小型CMS上使用会话。
我正在测试,我能够很好地运行会话使用瓶作为服务器。代码如下:
# test.session.py
import bottle
from beaker.middleware import SessionMiddleware
session_opts = {
'session.type': 'file',
'session.cookie_expires': 300,
'session.data_dir': './data',
'session.auto': True
}
app = SessionMiddleware(bottle.app(), session_opts)
@bottle.route('/set_session')
def session_test():
varsession = bottle.request.environ.get('beaker.session')
varsession['value1'] = 'This is the value'
return varsession['value1']
@bottle.route('/get_session')
def sessao():
varsession = bottle.request.environ.get('beaker.session')
return varsession['value1']
bottle.run(app=app)但是我使用Apache + modwsgi来运行这个CMS。我有点搞不懂我该把进口东西放在哪里……我是应该放入“adapter.wsgi”,还是应该放置到“.py”文件中?
WSGI.file
import sys, os, bottle
sys.path = ['/filmes/appone'] + sys.path
os.chdir(os.path.dirname(__file__))
import appone # This loads your application
application = bottle.default_app()# .py file
import bottle
from bottle import route, request, debug
from beaker.middleware import SessionMiddleware
session_opts = {
'session.type': 'file',
'session.cookie_expires': 300,
'session.data_dir': './data',
'session.auto': True
}
app = SessionMiddleware(bottle.app(), session_opts)
@route('/')
def funcone():
return "Home Page"
@route('/session_test')
def session_test():
varsession = bottle.request.environ.get('beaker.session')
varsession['value1'] = 'This is the value'
return varsession['value1']我犯了500个错误。这就是我所拥有的一切。
顺便问一下,我应该在Apache + WSGI上设置调试True吗?
我是新来的.
发布于 2013-07-12 06:40:00
这就是我将如何修改您的# WSGI.file
import os
os.chdir('/filmes/') # the directory where your py files are, use the full linux system path
from appone import app # I assume appone.py is your main application
application = app您正在引用default_app(),它在代码中实现会话时被app所取代。
https://stackoverflow.com/questions/17538395
复制相似问题