python - urls - django文檔



在Python中檢測裝飾器 (1)

只是在shell中快速地func_closure了一下,函數的func_closure屬性在未裝飾的函數上是空的,但是在裝飾的函數中包含數據。 不是100%肯定這是真的,但也許這對你來說是可行的。

在Python中,是否有可能檢測到另一個函數是否有裝飾器?

具體來說,我試圖(在Django的)寫一些中間件,將檢測正在處理的視圖是否包裝在@login_required裝飾。

class SomeMiddleware(object):

    def process_view(self, request, view_func, view_args, view_kwargs):
        if has_decorator(view_func):
            print "this view was decorated"

我想填寫的是“has_decorator”部分....

這可能嗎?





django-views