I have recently launched my app into production, and am now getting
500 errors when I attempt to access any of the /admin pages from
either the main site (mysite.com/admin), or any of the two apps inside
my project (mysite.com/recipes/admin or mysite.com/tracker/admin). My
admin pages were working fine in development, then I had to do a whole
bunch of stuff to get my static files working correctly -- now static
works fine in prod, but admin doesn't. Neither static nor admin works
in dev.
Here is the traceback from when I hit alpha:8080/admin: (my dev
machine running runserver)
Environment:
Request Method: GET
Request URL: http://alpha:8080/admin/
Django Version: 1.3.1
Python Version: 2.6.4
Installed Applications:
['django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'recipes',
'tracker',
'django.contrib.admin']
Installed Middleware:
('django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware')
Template error:
In template /usr/local/lib/python2.6/dist-packages/django/contrib/
admin/templates/admin/base.html, error at line 31
Caught ViewDoesNotExist while rendering: Could not import
michellecalabresi_info.views.django.views.static. Error was: No module
named django.views.static
21 : <!-- Header -->
22 : <div id="header">
23 : <div id="branding">
24 : {% block branding %}{% endblock %}
25 : </div>
26 : {% if user.is_active and user.is_staff %}
27 : <div id="user-tools">
28 : {% trans 'Welcome,' %}
29 : <strong>{% filter force_escape %}{% firstof
user.first_name user.username %}{% endfilter %}</strong>.
30 : {% block userlinks %}
31 : {% url 'django-admindocs-docroot' as docsroot
%}
32 : {% if docsroot %}
33 : <a href="{{ docsroot }}">{% trans
'Documentation' %}</a> /
34 : {% endif %}
35 : {% url 'admin:password_change' as
password_change_url %}
36 : {% if password_change_url %}
37 : <a href="{{ password_change_url }}">
38 : {% else %}
39 : <a href="{{ root_path }}password_change/">
40 : {% endif %}
41 : {% trans 'Change password' %}</a> /
Traceback:
File "/usr/local/lib/python2.6/dist-packages/django/core/handlers/
base.py" in get_response
111. response = callback(request,
*callback_args, **callback_kwargs)
File "/usr/local/lib/python2.6/dist-packages/django/contrib/admin/
sites.py" in wrapper
214. return self.admin_view(view, cacheable)(*args,
**kwargs)
File "/usr/local/lib/python2.6/dist-packages/django/utils/
decorators.py" in _wrapped_view
93. response = view_func(request, *args,
**kwargs)
File "/usr/local/lib/python2.6/dist-packages/django/views/decorators/
cache.py" in _wrapped_view_func
79. response = view_func(request, *args, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/django/contrib/admin/
sites.py" in inner
197. return view(request, *args, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/django/views/decorators/
cache.py" in _wrapped_view_func
79. response = view_func(request, *args, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/django/contrib/admin/
sites.py" in index
382. context_instance=context_instance
File "/usr/local/lib/python2.6/dist-packages/django/shortcuts/
__init__.py" in render_to_response
20. return HttpResponse(loader.render_to_string(*args,
**kwargs), **httpresponse_kwargs)
File "/usr/local/lib/python2.6/dist-packages/django/template/
loader.py" in render_to_string
188. return t.render(context_instance)
File "/usr/local/lib/python2.6/dist-packages/django/template/base.py"
in render
123. return self._render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/base.py"
in _render
117. return self.nodelist.render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/base.py"
in render
744. bits.append(self.render_node(node, context))
File "/usr/local/lib/python2.6/dist-packages/django/template/debug.py"
in render_node
73. result = node.render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/
loader_tags.py" in render
127. return compiled_parent._render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/base.py"
in _render
117. return self.nodelist.render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/base.py"
in render
744. bits.append(self.render_node(node, context))
File "/usr/local/lib/python2.6/dist-packages/django/template/debug.py"
in render_node
73. result = node.render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/
loader_tags.py" in render
127. return compiled_parent._render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/base.py"
in _render
117. return self.nodelist.render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/base.py"
in render
744. bits.append(self.render_node(node, context))
File "/usr/local/lib/python2.6/dist-packages/django/template/debug.py"
in render_node
73. result = node.render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/
defaulttags.py" in render
311. return self.nodelist_true.render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/base.py"
in render
744. bits.append(self.render_node(node, context))
File "/usr/local/lib/python2.6/dist-packages/django/template/debug.py"
in render_node
73. result = node.render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/
defaulttags.py" in render
311. return self.nodelist_true.render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/base.py"
in render
744. bits.append(self.render_node(node, context))
File "/usr/local/lib/python2.6/dist-packages/django/template/debug.py"
in render_node
73. result = node.render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/
loader_tags.py" in render
64. result = block.nodelist.render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/base.py"
in render
744. bits.append(self.render_node(node, context))
File "/usr/local/lib/python2.6/dist-packages/django/template/debug.py"
in render_node
73. result = node.render(context)
File "/usr/local/lib/python2.6/dist-packages/django/template/
defaulttags.py" in render
437. url = reverse(view_name, args=args, kwargs=kwargs,
current_app=context.current_app)
File "/usr/local/lib/python2.6/dist-packages/django/core/
urlresolvers.py" in reverse
391. *args, **kwargs)))
File "/usr/local/lib/python2.6/dist-packages/django/core/
urlresolvers.py" in reverse
312. possibilities = self.reverse_dict.getlist(lookup_view)
File "/usr/local/lib/python2.6/dist-packages/django/core/
urlresolvers.py" in _get_reverse_dict
229. self._populate()
File "/usr/local/lib/python2.6/dist-packages/django/core/
urlresolvers.py" in _populate
220. lookups.appendlist(pattern.callback, (bits,
p_pattern))
File "/usr/local/lib/python2.6/dist-packages/django/core/
urlresolvers.py" in _get_callback
167. raise ViewDoesNotExist("Could not import %s. Error
was: %s" % (mod_name, str(e)))
Exception Type: TemplateSyntaxError at /admin/
Exception Value: Caught ViewDoesNotExist while rendering: Could not
import mysite.views.django.views.static. Error was: No module named
django.views.static
Here is my settings.py:
from os import path
DEBUG = True # SB TRUE for Development
TEMPLATE_DEBUG = DEBUG # SB DEBUG for Development
ADMINS = (
# ('tempomental', 'tempomental@example.com'),
)
MANAGERS = ADMINS
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3', # Add
'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
'NAME': '/home/user/mycode/myapp/myapp',
# Or path to database file if using sqlite3.
'USER': '', # Not used with sqlite3.
'PASSWORD': '', # Not used with sqlite3.
'HOST': '', # Set to empty string for
localhost. Not used with sqlite3.
'PORT': '', # Set to empty string for
default. Not used with sqlite3.
}
}
TIME_ZONE = 'America/Chicago'
LANGUAGE_CODE = 'en-us'
SITE_ID = 1
USE_I18N = True
USE_L10N = True
MEDIA_ROOT = ''
MEDIA_URL = ''
STATIC_ROOT = path.join(path.abspath(path.dirname(__file__)),
'static')
STATIC_URL = 'http://mysite.com/static/'
ADMIN_MEDIA_PREFIX = '/static/admin/'
STATICFILES_DIRS = (
"/home/user/mycode/mysite/static-dev",
)
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
)
SECRET_KEY = 'blahbalhblbhabhla'
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
)
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
)
ROOT_URLCONF = 'myapp.urls'
TEMPLATE_DIRS = (
"/home/user/mycode/myapp/templates",
)
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'recipes',
'tracker',
'django.contrib.admin',
)
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'mail_admins': {
'level': 'ERROR',
'class': 'django.utils.log.AdminEmailHandler'
}
},
'loggers': {
'django.request': {
'handlers': ['mail_admins'],
'level': 'ERROR',
'propagate': True,
},
}
}
Here is my tracker/admin.py:
from tracker.models import Attendee
from tracker.models import Party
from django.contrib import admin
admin.site.register(Attendee)
admin.site.register(Party)
Here is my tracker/urls.py:
from django.conf.urls.defaults import patterns, include, url
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('tracker.views',
(r'^$', 'index'),
(r'^party/(?P<party_id>\d+)/$', 'partyDetail'),
)
urlpatterns += patterns('',
url(r'^admin/', include(admin.site.urls)),
)
And finally, here is my /urls.py:
from django.conf import settings
from django.conf.urls.defaults import patterns, include, url
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
# login page
(r'^login/$', 'django.contrib.auth.views.login'),
# logout page
# (r'^logout/$', logout_page),
# recipes section
(r'^recipes/', include('recipes.urls')),
# site admin
url(r'^admin/', include(admin.site.urls)),
# party tracker section
(r'^tracker/', include('tracker.urls')),
)
# Pages for the main site
urlpatterns += patterns('myapp.views',
# Host a party
(r'^hostparty/', 'host_party'),
# Thank you for contacting me
(r'^contact/thankyou/', 'thankyou'),
# Contact me
(r'^contact/', 'contact'),
# About me
(r'^aboutme/', 'aboutme'),
# home page
(r'^$', 'main_page'),
(r'^static/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.STATIC_ROOT}),
)
------------------
Thanks in advance for your help.
TM
--
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 django-users+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/django-users?hl=en.
No comments:
Post a Comment