Can someone help me with the following error. It occurs when I restart
Apache and try to load the Admin page. When I refresh, the Admin page
comes up, however the Documentation, Change Password, and Log Out
links call http://localhost/admin/. I reinstalled Django, but it did
not help.

TypeError at /admin/
dict objects are unhashable
Request Method:         GET
Request URL:    http://localhost/admin/
Exception Type:         TypeError
Exception Value:        dict objects are unhashable
Exception Location:     C:\Python25\lib\site-packages\django\core
\urlresolvers.py in _get_reverse_dict, line 222
Python Executable:      C:\wamp\apache2\bin\httpd.exe
Python Version:         2.5.1
Template error

In template c:\python25\lib\site-packages\django\contrib\admin
\templates\admin\base.html, error at line 28
Caught an exception while rendering: dict objects are unhashable
18      {% if not is_popup %}
19      <!-- Header -->
20      <div id="header">
21      <div id="branding">
22      {% block branding %}{% endblock %}
23      </div>
24      {% if user.is_authenticated and user.is_staff %}
25      <div id="user-tools">
26      {% trans 'Welcome,' %} <strong>{% if user.first_name %}
{{ user.first_name|escape }}{% else %}{{ user.username }}{% endif %}</
strong>.
27      {% block userlinks %}
28      <a href="{% url django.contrib.admin.views.doc.doc_index %}">{%
trans 'Documentation' %}</a>
29      / <a href="{% url django.contrib.auth.views.password_change %}">{%
trans 'Change password' %}</a>
30      / <a href="{% url django.contrib.auth.views.logout %}">{% trans
'Log out' %}</a>
31      {% endblock %}
32      </div>
33      {% endif %}
34      {% block nav-global %}{% endblock %}
35      </div>
36      <!-- END Header -->
37      {% block breadcrumbs %}<div class="breadcrumbs"><a href="/">{%
trans 'Home' %}</a>{% if title %} &rsaquo; {{ title|escape }}{% endif
%}</div>{% endblock %}
38      {% endif %}
Traceback (innermost last)
Switch to copy-and-paste view

    * C:\Python25\lib\site-packages\django\template\__init__.py in
render_node
       803.
       804. def render_node(self, node, context):
       805. return node.render(context)
       806.
       807. class DebugNodeList(NodeList):
       808. def render_node(self, node, context):
       809. try:
       810. result = node.render(context) ...
       811. except TemplateSyntaxError, e:
       812. if not hasattr(e, 'source'):
       813. e.source = node.source
       814. raise
       815. except Exception, e:
       816. from sys import exc_info
      ▶ Local vars
      Variable  Value
      context
      [{'block': <Block Node: userlinks. Contents: [<Text Node: ' <a
href="'>, <django.template.defaulttags.URLNode object at 0x062F1BD0>,
<Text Node: '">'>, <django.templatetags.i18n.TranslateNode object at
0x062F1C10>, <Text Node: '</a> / <a href="'>,
<django.template.defaulttags.URLNode object at 0x062F1C50>, <Text
Node: '">'>, <django.templatetags.i18n.TranslateNode object at
0x062F1C90>, <Text Node: '</a> / <a href="'>,
<django.template.defaulttags.URLNode object at 0x062F1CD0>, <Text
Node: '">'>, <django.templatetags.i18n.TranslateNode object at
0x062F1D10>, <Text Node: '</a> '>]>}, {'title': u'Site
administration'}, {'MEDIA_URL': 'http://10.1.2.214:81/'},
{'LANGUAGES': (('ar', 'Arabic'), ('bn', 'Bengali'), ('bg',
'Bulgarian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 'Welsh'),
('da', 'Danish'), ('de', 'German'), ('el', 'Greek'), ('en',
'English'), ('es', 'Spanish'), ('es_AR', 'Argentinean Spanish'),
('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('ga',
'Gaeilge'), ('gl', 'Galician'), ('hu', 'Hungarian'), ('he', 'Hebrew'),
('hr', 'Croatian'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja',
'Japanese'), ('ko', 'Korean'), ('km', 'Khmer'), ('kn', 'Kannada'),
('lv', 'Latvian'), ('mk', 'Macedonian'), ('nl', 'Dutch'), ('no',
'Norwegian'), ('pl', 'Polish'), ('pt', 'Portugese'), ('pt-br',
'Brazilian'), ('ro', 'Romanian'), ('ru', 'Russian'), ('sk', 'Slovak'),
('sl', 'Slovenian'), ('sr', 'Serbian'), ('sv', 'Swedish'), ('ta',
'Tamil'), ('te', 'Telugu'), ('tr', 'Turkish'), ('uk', 'Ukrainian'),
('zh-cn', 'Simplified Chinese'), ('zh-tw', 'Traditional Chinese')),
'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en-us'}, {}, {'perms':
<django.core.context_processors.PermWrapper object at 0x062C9350>,
'messages': [], 'user': <User: ksilha>}, {}]
      e
      TypeError('dict objects are unhashable',)
      exc_info
      <built-in function exc_info>
      node
      <django.template.defaulttags.URLNode object at 0x062F1BD0>
      self
      [<Text Node: ' <a href="'>, <django.template.defaulttags.URLNode
object at 0x062F1BD0>, <Text Node: '">'>,
<django.templatetags.i18n.TranslateNode object at 0x062F1C10>, <Text
Node: '</a> / <a href="'>, <django.template.defaulttags.URLNode object
at 0x062F1C50>, <Text Node: '">'>,
<django.templatetags.i18n.TranslateNode object at 0x062F1C90>, <Text
Node: '</a> / <a href="'>, <django.template.defaulttags.URLNode object
at 0x062F1CD0>, <Text Node: '">'>,
<django.templatetags.i18n.TranslateNode object at 0x062F1D10>, <Text
Node: '</a> '>]
      wrapped
      TemplateSyntaxError('Caught an exception while rendering: dict
objects are unhashable',)
    * C:\Python25\lib\site-packages\django\template\defaulttags.py in
render
       337. self.kwargs = kwargs
       338.
       339. def render(self, context):
       340. from django.core.urlresolvers import reverse,
NoReverseMatch
       341. args = [arg.resolve(context) for arg in self.args]
       342. kwargs = dict([(smart_str(k,'ascii'), v.resolve(context))
for k, v in self.kwargs.items()])
       343. try:
       344. return reverse(self.view_name, args=args,
kwargs=kwargs) ...
       345. except NoReverseMatch:
       346. try:
       347. project_name = settings.SETTINGS_MODULE.split('.')[0]
       348. return reverse(project_name + '.' + self.view_name,
args=args, kwargs=kwargs)
       349. except NoReverseMatch:
       350. return ''
      ▶ Local vars
      Variable  Value
      NoReverseMatch
      <class 'django.core.urlresolvers.NoReverseMatch'>
      args
      []
      context
      [{'block': <Block Node: userlinks. Contents: [<Text Node: ' <a
href="'>, <django.template.defaulttags.URLNode object at 0x062F1BD0>,
<Text Node: '">'>, <django.templatetags.i18n.TranslateNode object at
0x062F1C10>, <Text Node: '</a> / <a href="'>,
<django.template.defaulttags.URLNode object at 0x062F1C50>, <Text
Node: '">'>, <django.templatetags.i18n.TranslateNode object at
0x062F1C90>, <Text Node: '</a> / <a href="'>,
<django.template.defaulttags.URLNode object at 0x062F1CD0>, <Text
Node: '">'>, <django.templatetags.i18n.TranslateNode object at
0x062F1D10>, <Text Node: '</a> '>]>}, {'title': u'Site
administration'}, {'MEDIA_URL': 'http://10.1.2.214:81/'},
{'LANGUAGES': (('ar', 'Arabic'), ('bn', 'Bengali'), ('bg',
'Bulgarian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 'Welsh'),
('da', 'Danish'), ('de', 'German'), ('el', 'Greek'), ('en',
'English'), ('es', 'Spanish'), ('es_AR', 'Argentinean Spanish'),
('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('ga',
'Gaeilge'), ('gl', 'Galician'), ('hu', 'Hungarian'), ('he', 'Hebrew'),
('hr', 'Croatian'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja',
'Japanese'), ('ko', 'Korean'), ('km', 'Khmer'), ('kn', 'Kannada'),
('lv', 'Latvian'), ('mk', 'Macedonian'), ('nl', 'Dutch'), ('no',
'Norwegian'), ('pl', 'Polish'), ('pt', 'Portugese'), ('pt-br',
'Brazilian'), ('ro', 'Romanian'), ('ru', 'Russian'), ('sk', 'Slovak'),
('sl', 'Slovenian'), ('sr', 'Serbian'), ('sv', 'Swedish'), ('ta',
'Tamil'), ('te', 'Telugu'), ('tr', 'Turkish'), ('uk', 'Ukrainian'),
('zh-cn', 'Simplified Chinese'), ('zh-tw', 'Traditional Chinese')),
'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en-us'}, {}, {'perms':
<django.core.context_processors.PermWrapper object at 0x062C9350>,
'messages': [], 'user': <User: ksilha>}, {}]
      kwargs
      {}
      reverse
      <function reverse at 0x05D15AB0>
      self
      <django.template.defaulttags.URLNode object at 0x062F1BD0>
    * C:\Python25\lib\site-packages\django\core\urlresolvers.py in
reverse
       289.
       290. def resolve(path, urlconf=None):
       291. return get_resolver(urlconf).resolve(path)
       292.
       293. def reverse(viewname, urlconf=None, args=None,
kwargs=None):
       294. args = args or []
       295. kwargs = kwargs or {}
       296. return iri_to_uri(u'/' +
get_resolver(urlconf).reverse(viewname, *args, **kwargs)) ...
 297.
      ▶ Local vars
      Variable  Value
      args
      []
      kwargs
      {}
      urlconf
      None
      viewname
      u'django.contrib.admin.views.doc.doc_index'
    * C:\Python25\lib\site-packages\django\core\urlresolvers.py in
reverse
       274. return self._resolve_special('500')
       275.
       276. def reverse(self, lookup_view, *args, **kwargs):
       277. try:
       278. lookup_view = get_callable(lookup_view, True)
       279. except (ImportError, AttributeError):
       280. raise NoReverseMatch
       281. if lookup_view in self.reverse_dict: ...
       282. return u''.join([reverse_helper(part.regex, *args,
**kwargs) for part in self.reverse_dict[lookup_view]])
       283. raise NoReverseMatch
       284.
       285. def reverse_helper(self, lookup_view, *args, **kwargs):
       286. sub_match = self.reverse(lookup_view, *args, **kwargs)
       287. result = reverse_helper(self.regex, *args, **kwargs)
      ▶ Local vars
      Variable  Value
      args
      ()
      kwargs
      {}
      lookup_view
      <function _checklogin at 0x063048B0>
      self
      <RegexURLResolver positiontech2.urls ^/>
    * C:\Python25\lib\site-packages\django\core\urlresolvers.py in
_get_reverse_dict
       215. if not self._reverse_dict and hasattr(self.urlconf_module,
'urlpatterns'):
       216. for pattern in reversed(self.urlconf_module.urlpatterns):
       217. if isinstance(pattern, RegexURLResolver):
       218. for key, value in pattern.reverse_dict.iteritems():
       219. self._reverse_dict[key] = (pattern,) + value
       220. else:
       221. self._reverse_dict[pattern.callback] = (pattern,)
       222. self._reverse_dict[pattern.name] = (pattern,) ...
       223. return self._reverse_dict
       224. reverse_dict = property(_get_reverse_dict)
       225.
       226. def resolve(self, path):
       227. tried = []
       228. match = self.regex.search(path)
      ▶ Local vars


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to