可能重复:
Bottle 框架和 OOP,使用方法而不是函数
我想将我的 bottle.py 路由包装到类中,如下所示:
from bottle import *
import users
class Routes:
user = None
@root.route('/')
@view('index')
def index_page( self ): #index page display
self.user = users.User()
return {}
但我不能这样做,因为瓶子试图让self好像它是一个路由变量。
这样做的目的是设置一个类范围的对象用户,这样我就可以进行 AJAX API 调用并验证我的用户,如下所示:
@root.route('/api/login/')
def user_login( self ): #user login api
if self.user.authenticate( request.POST.get( 'username' ) , request.POST.get( 'password' ) ):
return True
return {'error': 'error'}
PS:我正在使用签名的 cookie 来验证用户身份。此 cookie 包含非关键信息(用户的数据库记录 id)来操作此用户的数据。
有没有更方便的方法来做到这一点?