我一直在关注民意调查教程,直到我应该有管理员后端的登录页面。 http://docs.djangoproject.com/en/dev/intro/tutorial02/
相反,我得到这样的欢迎页面:
我在INSTALLED_APPS中启用了管理员应用,同步数据库并调整了urls.py,所以我不确定问题是什么。
使用mod_wsgi运行apache2。
urls.py: 来自django.conf.urls.defaults import *
# Uncomment the next two lines to enable the admin:
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
# Example:
# (r'^testproject/', include('testproject.foo.urls')),
# Uncomment the admin/doc line below to enable admin documentation:
(r'^admin/doc/', include('django.contrib.admindocs.urls')),
# Uncomment the next line to enable the admin:
(r'^admin/', include(admin.site.urls)),
)
Settings.py:
...
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
# Uncomment the next line to enable the admin:
'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
'django.contrib.admindocs',
'polls'
)
...
表:
数据库已更改
mysql> SHOW TABLES;
+----------------------------+
| Tables_in_django_test |
+----------------------------+
| auth_group |
| auth_group_permissions |
| auth_message |
| auth_permission |
| auth_user |
| auth_user_groups |
| auth_user_user_permissions |
| django_admin_log |
| django_content_type |
| django_session |
| django_site |
| polls_choice |
| polls_poll |
+----------------------------+
答案 0 :(得分:5)
这两行是否真的缩进了一个空格,如帖子中所示?
from django.contrib import admin
admin.autodiscover()
如果你这样做,你会得到一个IndentationError。将它们冲到左边缘。
后来:哦,我在上面的评论中看到你发现了这个缩进错误。将我的答案标记为社区维基。
答案 1 :(得分:4)
如果您是通过Apache和mod_wsgi执行此操作,那么您不会按照本教程进行操作。本教程告诉您使用开发服务器,原因很简单:使用Apache时,只要进行代码更改,就需要重新启动它。开发服务器会检测到更改并为您重新启动。
答案 2 :(得分:2)
我有一个相同的错误。即使我请求了 domain.com/admin ,我也只收到了欢迎页面。不确定我们的错误是否是由于相同的来源,因为我正在使用mod_fcgid在hostgator上运行我的django站点。
无论如何,通过为python添加更多特定的自定义路径解决了我的问题,一直到包含我的wsgi.py文件的目录。
我的index.fcgi文件是:
...
# Add a custom Python path. (optional)
sys.path.insert(0, "/home/*username*/django")
# Switch to the directory of your project.
...
现在是:
...
# Add a custom Python path. (optional)
sys.path.insert(0, "/home/*username*/django")
sys.path.insert(0, "/home/*username*/django/mysite")
sys.path.insert(0, "/home/*username*/django/mysite/mysite")
# Switch to the directory of your project.
...
我认为这是因为欢迎页面代码位于路径列表中比路径管理代码更靠近路径的路径上。
答案 3 :(得分:1)
如@Daniel所述,Apache中的mod_wsgi默认情况下不会选择代码更改。但是,它可以配置为这样做。参见:
http://code.google.com/p/modwsgi/wiki/ReloadingSourceCode#Monitoring_For_Code_Changes