def process_view(self, request, view_func, view_args, view_kwargs):
        try:
            view = get_class(view_func.__module__, view_func.__name__)
        except ImportError:
            # NOTE: This could be caused by wrapping view.
            return

        view_info = {
            'view_name': _('<no view>'),
            'view_permissions': _('Not defined'),
            'view_rules': _('Not defined'),
        }
        try:
            view_info['view_name'] = get_name_from_obj(view)
            try:
                view_info['view_permissions'] = get_name_from_obj(view.permissions)
                view_info['view_rules'] = str(
                    view.permissions.get_combined_rules(request, *view_args, **view_kwargs)
                )
            except AttributeError:
                # NOTE: No permissions defined for this view.
                pass
        except Http404:
            pass
        self.record_stats(view_info)
示例#2
0
    def process_view(self, request, view_func, view_args, view_kwargs):
        try:
            view = get_class(view_func.__module__, view_func.__name__)
        except ImportError:
            # NOTE: This could be caused by wrapping view.
            return

        view_info = {
            'view_name': _('<no view>'),
            'view_permissions': _('Not defined'),
            'view_rules': _('Not defined'),
        }
        try:
            view_info['view_name'] = get_name_from_obj(view)
            try:
                view_info['view_permissions'] = get_name_from_obj(
                    view.permissions)
                view_info['view_rules'] = str(
                    view.permissions.get_combined_rules(
                        request, *view_args, **view_kwargs))
            except AttributeError:
                # NOTE: No permissions defined for this view.
                pass
        except Http404:
            pass
        self.record_stats(view_info)
示例#3
0
def view_info(request):
    try:
        match = resolve(request.path)
        func, args, kwargs = match
        view = get_name_from_obj(func)

        if getattr(match, "url_name", False):
            url_name = match.url_name
            if match.namespaces:
                url_name = ":".join([*match.namespaces, url_name])
        else:
            url_name = _("<unavailable>")

        file_el = settings.BASE_DIR
        file_el = os.path.join(file_el, view.replace('.', os.sep))
        file_split = file_el.split(os.sep)
        file = os.sep.join(file_split[:-1]) + '.py'
        el = file_split[-1]
        return {
            'view': view,
            'url_name': url_name,
            'url': request.path,
            'file': file,
            'el': el
        }

    except Http404:
        pass
示例#4
0
    def content(self):
        context = self.context.copy()

        context.update({
            'get': [(k, self.request.GET.getlist(k)) for k in self.request.GET],
            'post': [(k, self.request.POST.getlist(k)) for k in self.request.POST],
            'cookies': [(k, self.request.COOKIES.get(k)) for k in self.request.COOKIES],
        })
        if hasattr(self, 'view_func'):
            if self.view_func is not None:
                name = get_name_from_obj(self.view_func)
            else:
                name = '<no view>'

            context.update({
                'view_func': name,
                'view_args': self.view_args,
                'view_kwargs': self.view_kwargs
            })

        if hasattr(self.request, 'session'):
            context.update({
                'session': [(k, self.request.session.get(k)) for k in self.request.session.iterkeys()]
            })

        return render_to_string('debug_toolbar/panels/request_vars.html', context)
示例#5
0
    def generate_stats(self, request, response):
        self.record_stats(
            {
                "get": get_sorted_request_variable(request.GET),
                "post": get_sorted_request_variable(request.POST),
                "cookies": get_sorted_request_variable(request.COOKIES),
            }
        )

        view_info = {
            "view_func": _("<no view>"),
            "view_args": "None",
            "view_kwargs": "None",
            "view_urlname": "None",
        }
        try:
            match = resolve(request.path)
            func, args, kwargs = match
            view_info["view_func"] = get_name_from_obj(func)
            view_info["view_args"] = args
            view_info["view_kwargs"] = kwargs
            view_info["view_urlname"] = getattr(match, "url_name", _("<unavailable>"))
        except Http404:
            pass
        self.record_stats(view_info)

        if hasattr(request, "session"):
            self.record_stats(
                {
                    "session": [
                        (k, request.session.get(k))
                        for k in sorted(request.session.keys())
                    ]
                }
            )
示例#6
0
    def process_response(self, request, response):
        self.record_stats({
            'get': [(k, request.GET.getlist(k)) for k in sorted(request.GET)],
            'post': [(k, request.POST.getlist(k)) for k in sorted(request.POST)],
            'cookies': [(k, request.COOKIES.get(k)) for k in sorted(request.COOKIES)],
        })
        view_info = {
            'view_func': _('<no view>'),
            'view_args': 'None',
            'view_kwargs': 'None',
            'view_urlname': 'None',
        }
        try:
            match = resolve(request.path)
            func, args, kwargs = match
            view_info['view_func'] = get_name_from_obj(func)
            view_info['view_args'] = args
            view_info['view_kwargs'] = kwargs
            view_info['view_urlname'] = getattr(match, 'url_name',
                                                _('<unavailable>'))
        except Http404:
            pass
        self.record_stats(view_info)

        if hasattr(request, 'session'):
            self.record_stats({
                'session': [(k, request.session.get(k))
                            for k in sorted(request.session.keys(), key=force_text)]
            })
    def content(self):
        context = self.context.copy()

        context.update({
            'get':
            [(k, self.request.GET.getlist(k)) for k in self.request.GET],
            'post':
            [(k, self.request.POST.getlist(k)) for k in self.request.POST],
            'cookies': [(k, self.request.COOKIES.get(k))
                        for k in self.request.COOKIES],
        })
        if hasattr(self, 'view_func'):
            if self.view_func is not None:
                name = get_name_from_obj(self.view_func)
            else:
                name = '<no view>'

            context.update({
                'view_func': name,
                'view_args': self.view_args,
                'view_kwargs': self.view_kwargs
            })

        if hasattr(self.request, 'session'):
            context.update({
                'session': [(k, self.request.session.get(k))
                            for k in self.request.session.iterkeys()]
            })

        return render_to_string('debug_toolbar/panels/request_vars.html',
                                context)
    def process_response(self, request, response):
        self.record_stats(
            {
                "get": [(k, self.request.GET.getlist(k)) for k in self.request.GET],
                "post": [(k, self.request.POST.getlist(k)) for k in self.request.POST],
                "cookies": [(k, self.request.COOKIES.get(k)) for k in self.request.COOKIES],
            }
        )

        if hasattr(self, "view_func"):
            if self.view_func is not None:
                name = get_name_from_obj(self.view_func)
            else:
                name = "<no view>"

            self.record_stats(
                {
                    "view": self.get_view(request),
                    "view_func": name,
                    "view_args": self.view_args,
                    "view_kwargs": self.view_kwargs,
                }
            )

        if hasattr(self.request, "session"):
            self.record_stats({"session": [(k, self.request.session.get(k)) for k in self.request.session.iterkeys()]})
    def process_response(self, request, response):
        self.record_stats({
            'get': [(k, self.request.GET.getlist(k))
                    for k in sorted(self.request.GET)],
            'post': [(k, self.request.POST.getlist(k))
                     for k in sorted(self.request.POST)],
            'cookies': [(k, self.request.COOKIES.get(k))
                        for k in sorted(self.request.COOKIES)],
        })
        view_info = {
            'view_func': _('<no view>'),
            'view_args': 'None',
            'view_kwargs': 'None',
            'view_urlname': 'None',
        }
        try:
            match = resolve(self.request.path)
            func, args, kwargs = match
            view_info['view_func'] = get_name_from_obj(func)
            view_info['view_args'] = args
            view_info['view_kwargs'] = kwargs
            view_info['view_urlname'] = getattr(match, 'url_name',
                                                _('<unavailable>'))
        except Http404:
            pass
        self.record_stats(view_info)

        if hasattr(self.request, 'session'):
            self.record_stats({
                'session':
                [(k, self.request.session.get(k))
                 for k in sorted(self.request.session.keys(), key=force_text)]
            })
示例#10
0
    def process_response(self, request, response):
        self.record_stats({
            'get':
            [(k, self.request.GET.getlist(k)) for k in self.request.GET],
            'post':
            [(k, self.request.POST.getlist(k)) for k in self.request.POST],
            'cookies': [(k, self.request.COOKIES.get(k))
                        for k in self.request.COOKIES],
        })

        if hasattr(self, 'view_func'):
            if self.view_func is not None:
                name = get_name_from_obj(self.view_func)
            else:
                name = '<no view>'

            self.record_stats({
                'view_func': name,
                'view_args': self.view_args,
                'view_kwargs': self.view_kwargs
            })

        if hasattr(self.request, 'session'):
            self.record_stats({
                'session': [(k, self.request.session.get(k))
                            for k in self.request.session.iterkeys()]
            })
示例#11
0
文件: __init__.py 项目: AayushU/osqa
 def enabled(self):
     # Check to see if settings has a default value for it
     if get_name_from_obj(self) in dt_settings.CONFIG['DISABLE_PANELS']:
         default = 'off'
     else:
         default = 'on'
     # The user's cookies should override the default value
     return self.toolbar.request.COOKIES.get('djdt' + self.panel_id, default) == 'on'
示例#12
0
 def enabled(self):
     # Check to see if settings has a default value for it
     if get_name_from_obj(self) in dt_settings.CONFIG['DISABLE_PANELS']:
         default = 'off'
     else:
         default = 'on'
     # The user's cookies should override the default value
     return self.toolbar.request.COOKIES.get('djdt' + self.panel_id,
                                             default) == 'on'
 def enabled(self):
     # Check to see if settings has a default value for it
     disabled_panels = dt_settings.get_config()['DISABLE_PANELS']
     panel_path = get_name_from_obj(self)
     # Some panels such as the SQLPanel and TemplatesPanel exist in a
     # panel module, but can be disabled without panel in the path.
     # For that reason, replace .panel. in the path and check for that
     # value in the disabled panels as well.
     disable_panel = (
         panel_path in disabled_panels or
         panel_path.replace('.panel.', '.') in disabled_panels)
     if disable_panel:
         default = 'off'
     else:
         default = 'on'
     # The user's cookies should override the default value
     return self.toolbar.request.COOKIES.get('djdt' + self.panel_id, default) == 'on'
示例#14
0
 def enabled(self):
     # Check to see if settings has a default value for it
     disabled_panels = dt_settings.get_config()['DISABLE_PANELS']
     panel_path = get_name_from_obj(self)
     # Some panels such as the SQLPanel and TemplatesPanel exist in a
     # panel module, but can be disabled without panel in the path.
     # For that reason, replace .panel. in the path and check for that
     # value in the disabled panels as well.
     disable_panel = (panel_path in disabled_panels or panel_path.replace(
         '.panel.', '.') in disabled_panels)
     if disable_panel:
         default = 'off'
     else:
         default = 'on'
     # The user's cookies should override the default value
     return self.toolbar.request.COOKIES.get('djdt' + self.panel_id,
                                             default) == 'on'
示例#15
0
    def process_response(self, request, response):
        self.record_stats(
            {
                "get": [(k, self.request.GET.getlist(k)) for k in self.request.GET],
                "post": [(k, self.request.POST.getlist(k)) for k in self.request.POST],
                "cookies": [(k, self.request.COOKIES.get(k)) for k in self.request.COOKIES],
            }
        )
        view_info = {"view_func": _("<no view>"), "view_args": "None", "view_kwargs": "None", "view_urlname": "None"}
        try:
            match = resolve(self.request.path)
            func, args, kwargs = match
            view_info["view_func"] = get_name_from_obj(func)
            view_info["view_args"] = tuple(map(str, args))
            view_info["view_kwargs"] = dict([(key, str(arg)) for (key, arg) in kwargs.iteritems()])
            view_info["view_urlname"] = getattr(match, "url_name", _("<unavailable>"))
        except Http404:
            pass
        self.record_stats(view_info)

        if hasattr(self.request, "session"):
            self.record_stats({"session": [(k, self.request.session.get(k)) for k in self.request.session.iterkeys()]})
示例#16
0
 def process_response(self, request, response):
     self.record_stats({
         'get': [(k, self.request.GET.getlist(k)) for k in self.request.GET],
         'post': [(k, self.request.POST.getlist(k)) for k in self.request.POST],
         'cookies': [(k, self.request.COOKIES.get(k)) for k in self.request.COOKIES],
     })
     
     if hasattr(self, 'view_func'):
         if self.view_func is not None:
             name = get_name_from_obj(self.view_func)
         else:
             name = '<no view>'
         
         self.record_stats({
             'view_func': name,
             'view_args': self.view_args,
             'view_kwargs': self.view_kwargs
         })
     
     if hasattr(self.request, 'session'):
         self.record_stats({
             'session': [(k, self.request.session.get(k)) for k in self.request.session.iterkeys()]
         })
示例#17
0
    def generate_stats(self, request, response):
        self.record_stats(
            {
                "get": [(k, request.GET.getlist(k)) for k in sorted(request.GET)],
                "post": [(k, request.POST.getlist(k)) for k in sorted(request.POST)],
                "cookies": [
                    (k, request.COOKIES.get(k)) for k in sorted(request.COOKIES)
                ],
            }
        )
        view_info = {
            "view_func": _("<no view>"),
            "view_args": "None",
            "view_kwargs": "None",
            "view_urlname": "None",
        }
        try:
            match = resolve(request.path)
            func, args, kwargs = match
            view_info["view_func"] = get_name_from_obj(func)
            view_info["view_args"] = args
            view_info["view_kwargs"] = kwargs
            view_info["view_urlname"] = getattr(match, "url_name", _("<unavailable>"))
        except Http404:
            pass
        self.record_stats(view_info)

        if hasattr(request, "session"):
            self.record_stats(
                {
                    "session": [
                        (k, request.session.get(k))
                        for k in sorted(request.session.keys(), key=force_text)
                    ]
                }
            )
    def test_func(self):
        def x():
            return 1

        res = get_name_from_obj(x)
        self.assertEqual(res, "tests.test_utils.x")
    def test_class(self):
        class A:
            pass

        res = get_name_from_obj(A)
        self.assertEqual(res, "tests.test_utils.A")
 def test_lambda(self):
     res = get_name_from_obj(lambda: 1)
     self.assertEqual(res, "tests.test_utils.<lambda>")
示例#21
0
 def test_func(self):
     def x():
         return 1
     res = get_name_from_obj(x)
     self.assertEqual(res, 'tests.test_utils.x')
示例#22
0
 def test_class(self):
     class A:
         pass
     res = get_name_from_obj(A)
     self.assertEqual(res, 'tests.test_utils.A')
示例#23
0
 def test_lambda(self):
     res = get_name_from_obj(lambda: 1)
     self.assertEqual(res, 'tests.test_utils.<lambda>')
示例#24
0
 def test_class(self):
     class A:
         pass
     res = get_name_from_obj(A)
     self.assertEquals(res, 'tests.tests.A')
示例#25
0
 def test_lambda(self):
     res = get_name_from_obj(lambda: 1)
     self.assertEquals(res, 'tests.tests.<lambda>')
示例#26
0
 def test_lambda(self):
     res = get_name_from_obj(lambda: 1)
     self.assertEquals(res, "tests.tests.<lambda>")
示例#27
0
    def test_class(self):
        class A:
            pass

        res = get_name_from_obj(A)
        self.assertEquals(res, "tests.tests.A")
示例#28
0
 def test_func(self):
     def x():
         return 1
     res = get_name_from_obj(x)
     self.assertEquals(res, 'tests.tests.x')
示例#29
0
    def test_func(self):
        def x():
            return 1

        res = get_name_from_obj(x)
        self.assertEquals(res, "tests.tests.x")