2017-02-22 26 views
0

После учебника Django (part 2) я не могу видеть свое приложение Polls в моей панели администратора django после его регистрации. Мой экран выглядит как это, с явным отсутствием секции для Polls приложения:Учебник Django часть 2 - приложение не появляется на админе после регистрации

Django Admin Screen

Что я сделал до сих пор (following parts of this answer и сам учебник):

  1. Зарегистрировал мое приложение в файле admin.py.
  2. Добавлено INSTALLED_APPS в settings.py в папку моего проекта.
  3. Ran python manage.py makemigrations & python manage.py migrate без каких-либо изменений (кстати, для будущих читателей - это новый вариант 1,8 воплощения syncdb, я считаю).
  4. Убедитесь, что пользователь, с которым я могу войти, имеет привилегию суперпользователя (согласно this answer).
  5. Перезагрузка моего nginx.

Я все еще неясен в отношении проблемы или, если на то пошло, ее отладки.

Мой admin.py файл:

from django.contrib import admin 

from .models import Question 

admin.site.register(Question) 

Мой models.py файл (обратите внимание на Question объект):

import datetime 

from django.utils import timezone 
from django.db import models 

class Question(models.Model): 
    question_text = models.CharField(max_length=200) 
    pub_date = models.DateTimeField('date published') 

    def __str__(self): 
     return self.question_text 

    def was_published_recently(self): 
     return self.pub_date >= timezone.now() - datetime.timedelta(days=1) 


class Choice(models.Model): 
    question = models.ForeignKey(Question, on_delete=models.CASCADE) 
    choice_text = models.CharField(max_length=200) 
    votes = models.IntegerField(default=0) 

    def __str__(self): 
     return self.choice_text 

INSTALLED_APPS часть моего файла settings.py проекта:

INSTALLED_APPS = [ 
    'polls.apps.PollsConfig', 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
] 
+0

Можете ли вы опубликовать, как выглядит ваш файл 'admin.py', пожалуйста? – themanatuf

+0

Добавил это прямо сейчас[email protected] – t0mgs

+0

Вы видите файл 'admin.pyc' в каталоге? Я предполагаю, что 'admin.py' не выполняется. Также убедитесь, что 'django.contrib.admin' находится в вашем' INSTALLED_APPS' тоже. – themanatuf

ответ

0

Как оказалось я не платил к процессу , в котором приложение было подано.

Так, riding on this answer, я понял, что ломается, как это:

  1. Nginx получает URL, решает, куда тянуть с - в нашем случае, Gunicorn.
  2. Gunicorn ищет подходящий файл Python для вытягивания - в нашем случае Django.
  3. Djnago получает исполнение и приложение загружается (включая нашу панель администратора).

Im этот случай, после внесения изменений в админке я перезапущен Nginx, но не Gunicorn. Перезапуск Gunicorn решил проблему, и если бы вы были достаточно заинтересованы, чтобы посмотреть мой последний комментарий, nginx потерпел крах из-за опечатки в моем файле admin.py (добавлен после написания этого вопроса в попытке исправить его и, таким образом, не появился в вопрос body).