Приложение (или модель) не отображается в Django Admin - PullRequest
2 голосов
/ 01 августа 2011

Примечание:

  • Django 1.3
  • thingy - это название моего экспериментального приложения.
  • изучает Python & Django в течение недели.

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

exp / settings.py соответствующий раздел:

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'thingy',
    # Uncomment the next line to enable the admin:
    'django.contrib.admin',
    # Uncomment the next line to enable admin documentation:
    # 'django.contrib.admindocs',
)

exp / thingy / admin.py :

from thingy.models import Daily
from django.contrib import admin

class Daily(admin.ModelAdmin):
    fields    = ['user', 'hours_as_sec']

admin.site.register(Daily)

exp / thingy / models.py :

from django.db import models
from django.contrib.auth.models import User

# Create your models here.

class Daily(models.Model):
    user=models.ForeignKey(User, unique=True)
    day = models.DateField()
    hours_as_sec = models.PositiveIntegerField()
    notes = models.TextField()

class Monthly(models.Model):
    user=models.ForeignKey(User, unique=True)
    month = models.DateField()
    hours_as_sec = models.PositiveIntegerField()
    notes = models.TextField()

class WorkedWith(models.Model):
    user=models.ForeignKey(User, unique=True)
    day = models.DateField()
    hours_as_sec = models.PositiveIntegerField()

class UserProfile(models.Model):
    user = models.ForeignKey(User, unique=True)
    url = models.URLField("Website", blank=True)
    company = models.CharField(max_length=50, blank=True)

User.profile = property(lambda u: UserProfile.objects.get_or_create(user=u)[0])

Я не в курсе.Есть идеи?Я заставил это работать в официальном учебнике , но не могу заставить его работать в любом самодельном приложении, поэтому я знаю, что делаю что-то не так, но я не знаю, что.

1 Ответ

4 голосов
/ 01 августа 2011

В вашем admin.py вы должны изменить способ регистрации вашей модели. Измените имя класса с

class Daily(admin.ModelAdmin):
    fields    = ['user', 'hours_as_sec']

до

class DailyAdmin(admin.ModelAdmin):
    fields    = ['user', 'hours_as_sec']

и зарегистрируйтесь следующим образом:

admin.site.register(Daily,DailyAdmin)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...