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)
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)
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
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 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()) ] } )
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 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)] })
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()] })
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'
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'
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()]})
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>")
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>')
def test_class(self): class A: pass res = get_name_from_obj(A) self.assertEquals(res, 'tests.tests.A')
def test_lambda(self): res = get_name_from_obj(lambda: 1) self.assertEquals(res, 'tests.tests.<lambda>')
def test_lambda(self): res = get_name_from_obj(lambda: 1) self.assertEquals(res, "tests.tests.<lambda>")
def test_class(self): class A: pass res = get_name_from_obj(A) self.assertEquals(res, "tests.tests.A")
def test_func(self): def x(): return 1 res = get_name_from_obj(x) self.assertEquals(res, 'tests.tests.x')
def test_func(self): def x(): return 1 res = get_name_from_obj(x) self.assertEquals(res, "tests.tests.x")