특정 모델에 대한 새 항목을 만들면 장고 관리자에 표시되지 않습니다.장고 관리자가 항목을 표시하지 않습니다
기관 모델이 문제의 원인입니다.
# catalog.models
class Content(models.Model):
class Meta:
abstract = True
BUNDESLAND_CHOICES = (
('bw', 'Baden-Württemberg'),
('by', 'Bayern'),
('be', 'Berlin'),
('bb', 'Brandenburg'),
('hb', 'Bremen'),
('hh', 'Hamburg'),
('he', 'Hessen'),
('mv', 'Mecklenburg-Vorpommern'),
('ni', 'Niedersachsen'),
('nw', 'Nordrhein-Westfalen'),
('rp', 'Rheinland-Pfalz'),
('sl', 'Saarland'),
('sn', 'Sachsen'),
('st', 'Sachsen-Anhalt'),
('sh', 'Schleswig-Holstein'),
('th', 'Thüringen'),
)
name = models.CharField(max_length=255, verbose_name='Agentur')
address = models.CharField(max_length=255, verbose_name='Straße')
state = models.CharField(max_length=2, choices=BUNDESLAND_CHOICES, verbose_name='Bundesland')
city = models.CharField(max_length=255, verbose_name='Stadt')
zip = models.CharField(max_length=10, verbose_name='PLZ')
phone = models.CharField(max_length=40, blank=True, verbose_name='Telefonnr.')
fax = models.CharField(max_length=40, blank=True, verbose_name='Fax')
email = models.EmailField(verbose_name='E-Mail', help_text='Offizielle E-Mail')
url = models.URLField(verbose_name='URL')
owner = models.CharField(max_length=255, verbose_name='Besitzer')
description = models.TextField(verbose_name='Beschreibung')
category = models.ManyToManyField(Category, verbose_name='Kategorie')
user = models.ForeignKey(User, verbose_name='Benutzer', null=True, blank=True)
slug = models.SlugField(max_length=80, blank=True)
identity = models.CharField(max_length=64, unique=True, blank=True)
identity_used = models.BooleanField(default=False)
show = models.BooleanField(default=False, verbose_name='Anzeigen')
tp = models.DateTimeField(auto_now_add=True)
# agency.models
class AgencyActiveManager(models.Manager):
def get_query_set(self):
return super(AgencyActiveManager,self).get_query_set().filter(show=True)
class Agency(Content):
clients = models.TextField(verbose_name='Klienten')
active = AgencyActiveManager()
objects = models.Manager()
def __unicode__(self):
return self.name
def save(self, **kwargs):
if not self.identity:
self.identity = hashlib.sha256('%s:%s' %(get_word(),datetime.datetime.now())).hexdigest()
if not self.slug:
self.slug = slugify(self.name, instance=self)
super(Agency, self).save(**kwargs)
# agency.admin
from django.contrib import admin
from agency.models import Agency
admin.site.register(Agency)
관리자로 새 대행사 항목을 만들고 저장했습니다. '0 agencys'가
내가 수동으로 URL/관리/기관/기관/1을 호출하려고하면/I 얻을 : 파이썬 쉘을 통해 쿼리는 저장이 관리 페이지는 말한다
In [15]: Agency.objects.all()
Out[15]: [<Agency: Argentur>]
일을 보여줍니다 1
페이지를 찾을하지 않는 기본 키 아무 기관 객체가 없다는 것을 말하는 404 (404) 요청 방법 : http://localhost:8000/admin/agency/agency/1/
: 요청 URL을 GETDas agency-Objekt mit preemschlüssel u'1 ist nicht vorhanden.
Django 설정 파일에 DEBUG = True가 있으므로이 오류가 표시됩니다. 이것을 False로 변경하면 Django는 표준 404 페이지를 표시합니다.
그러나 비단뱀 쉘은 말합니다 :
In [16]: Agency.objects.all()[0].pk
Out[16]: 1
내가 매우 분명 뭔가를 놓치고 있습니까?
내 생각 엔 추상 모델로 할 일이있는 것 같지만 무엇을 알아 내지 못합니다.