2011年2月18日金曜日

既存の関数に後からデコレート

django-axesでやっていたのでメモ
admin.site.loginに定義したwatch_loginをくっつける。middlewareの初期化でやっちゃう。

class FailedLoginMiddleware(object):

    def __init__(self, *args, **kwargs):
        super(FailedLoginMiddleware, self).__init__(*args, **kwargs)

        # watch the admin login page
        admin.site.login = watch_login(admin.site.login)

        # and the regular auth login page
        auth_views.login = watch_login(auth_views.login)

0 件のコメント:

コメントを投稿