Приложения не будут отображаться в админке Django - PullRequest
6 голосов
/ 05 января 2010

Я прочитал все остальные темы, но до сих пор не понимаю, почему мои приложения не отображаются в админке Django. Все остальное работает нормально.

Мои приложения находятся в settings.py

В моем корневом файле urls.py есть файл admin.autodiscover

from django.conf.urls.defaults import *
from django.conf import settings

from django.views.generic.simple import direct_to_template

from django.contrib import admin

admin.autodiscover()



urlpatterns = patterns('',
url(r'^$', direct_to_template, {
    "template": "homepage.html",
}, name="home"),

url(r'^admin/invite_user/$', 'signup_codes.views.admin_invite_user', name="admin_invite_user"),
url(r'^account/signup/$', "signup_codes.views.signup", name="acct_signup"),

(r'^account/', include('account.urls')),
(r'^profiles/', include('basic_profiles.urls')),
(r'^notices/', include('notification.urls')),
(r'^announcements/', include('announcements.urls')),
(r'^tagging_utils/', include('tagging_utils.urls')),
(r'^attachments/', include('attachments.urls')),
(r'^comments/', include('threadedcomments.urls')),
#
(r'^wayfinder/', include('wayfinder.urls')),
(r'^site/', include('jsite.urls')),
(r'^kiosk/', include('kiosk.urls')),
(r'^navigator/', include('navigator.urls')),
(r'^location/', include('location.urls')),
(r'^event/', include('event.urls')),
#(r'^news_reader/', include('news_reader.urls')),
#(r'^weather_reader/', include('weather_reader.urls')),

(r'^admin/(.*)', admin.site.root),
)

if settings.SERVE_MEDIA:
urlpatterns += patterns('',
    (r'^site_media/', include('staticfiles.urls')),
)

Все мои приложения имеют файл admin.py, содержащий что-то вроде

from django.contrib import admin
from event.models import Event

class EventAdmin(admin.ModelAdmin):
    list_display = (
                'short_name',
                'long_name',
                'locations',
                'categories',
                'description',
                'phone',
                'email',
                'url_source',
                'url_location',
                'external_ref',
                'show_event'
            )

admin.site.register(Event, EventAdmin)

И я перезагружал сервер снова и снова; -)

Я строю на вершине Пинакса, но, судя по моему прочтению, это ничего не должно изменить. Любая подсказка, что может быть не так?

Ответы [ 7 ]

9 голосов
/ 05 января 2010

Есть ли у вас приложения в разделе INSTALLED_APPS в settings.py? Убедитесь, что там есть ваши приложения. Мой раздел читает

INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.admin',
'django.contrib.sites',
'squick.items',
'cowsite.search',
'cowsite.posts',

)

например. Я совершенно уверен в безопасности, они не будут отображаться в админке, если они не в установленных приложениях. Я думаю, у меня была такая же проблема, когда я не мог заставить корову появляться в админке.

Документы Django говорят о странице администратора: «По умолчанию отображаются все приложения в INSTALLED_APPS, которые были зарегистрированы в приложении администратора, в алфавитном порядке»

5 голосов
/ 08 января 2010

По стечению обстоятельств у меня была такая же проблема этим утром. Вкратце, это то, что сработало для меня (подробности см. В ссылках):

В каталоге верхнего уровня MyApp (то есть в том же каталоге, что и models.py и т. Д.) Я добавил модуль python admin.py, содержащий:

from models import ThisModel, ThatModel
from django.contrib import admin

admin.site.register(ThisModel)
admin.site.register(ThatModel)

Затем в каталоге mysite я сделал syncdb и runserver, а ThisModel и ThatModel были в интерфейсе администратора.

Это работает для вас?

С наилучшими пожеланиями

Иван

** Список литературы

(Я новый участник, поэтому мне разрешено размещать только одну гиперссылку!)

Учебное пособие по Django: внесите изменения в приложение опроса в администраторе

Был также запрос в группе Google Pinax, недавно озаглавленный «Как добавить мое приложение в Admin в проекте Pinax?»

5 голосов
/ 05 января 2010

Вы входите в систему как администратор с правами суперпользователя? Если нет, то это может быть проблема с разрешениями.

0 голосов
/ 11 сентября 2013

У меня была та же проблема, у меня получалось изменить эту строку в urls.py:

url(r'^admin/', include(admin.site.urls)),

до

url('^admin/', include(admin.site.urls)),

(удаление r в первом бите кода) По какой-то причине я не в курсе, после этого опросы стали видны в админке.

0 голосов
/ 25 мая 2013

Если другие сталкивались с этим, у меня возникла та же проблема из-за того, что grappelli.dashboard находился в установленных приложениях, но фактически не был установлен в virtualenv, поэтому сделайте остановку и убедитесь, что все ваши требования действительно установлены.

0 голосов
/ 05 января 2010

Вы не ответили на вопрос Энтони. Вы входите в систему как суперпользователь или, по крайней мере, пользователь с правами на добавление / редактирование приложений? Если нет, вы их не увидите.

0 голосов
/ 05 января 2010

Не уверен, какую версию django вы используете, но текущие документы предлагают , включая URL администратора.

 ('^admin/', include(admin.site.urls))
...