重複の可能性:
ボトル フレームワークと 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 {}
しかし、ボトルがルート変数であるかのように自己を取得しようとしているため、これを行うことはできません。
これの目標は、クラス全体のオブジェクトユーザーを設定して、次のように 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 には、このユーザーのデータを操作するための重要でない情報 (ユーザーの DB レコード ID ) が含まれています。
これを行うためのより便利な方法はありますか?