我正在努力让它发挥作用。我有很多错误,但这个是最奇怪的。请帮助我理解这里出了什么问题。这是日志:
KeyError at /
'filebrowser'
Request Method: GET
Django Version: 1.4
Exception Type: KeyError
Exception Value: 'filebrowser'
Exception Location: /home/vhosts/malinnikov.tomsk.ru/private/new_malinnikov/filebrowser/sites.py in get_default_site, line 88
Python Executable: /opt/python27/django/1.4/bin/python
Python Version: 2.7.0
模板渲染期间出错:在模板 /home/vhosts/malinnikov.tomsk.ru/httpdocs/templates/index.html 中,第 69 行出错
59 {% endblock %}
60
61 {% block content %}
62 {% if cover_photos %}
63 <div id="cover-photos">
64 {% for object in cover_photos %}
65 <div class="cover-photo {% if forloop.last %}cover-photo-last {% endif %}">
66 {% if object.link %}
67 <a href="{{ object.link }}">{% else %}
68 <a href="{% url gallery_index_page %}">{% endif %}<img
69 src="{% version object.photo.path 'big' %}"
70 {% if object.photo_in_gallery.title %}
71 title="{{ object.photo_in_gallery.title }}"
72 alt="Фотография {{ object.photo_in_gallery.title }}"
73 {% endif %}
74 /></a>
75 {% if user.is_authenticated %}
76 <div class="delete-link">
77 <a
78 title="Удалить фото"
79 target="_blank"
它是异常所在的 filebrowser/sites.py 中的函数代码。
78. def get_default_site(app_name='filebrowser'):
79. """
80. Returns the default site. This function uses Django's url resolution method to
81 obtain the name of the default site.
82. """
83. # Get the name of the default site:
84. resolver = get_resolver(get_urlconf())
85. name = 'filebrowser'
86.
87. # Django's default name resolution method (see django.core.urlresolvers.reverse())
88. app_list = resolver.app_dict[app_name]
89. if not name in app_list:
90. name = app_list[0]
91.
92. return get_site_dict()[name]
我忘了说当我尝试在控制台中运行时会发生此错误:
manage.py loaddata ~/httpdocs/data-backup.json
DB 为空时不会发生此错误。