Mam dziwny problem w django admin list_display
. Ilekroć dodaję klucz obcy do list_display
, cały widok listy zmian jest pusty pokazując tylko całkowitą liczbę wpisów.Django admin Lista wyświetlania + ForeignKey = Pusta lista zmian
models.py:
class Organization(models.Model):
org_id = models.AutoField(primary_key=True)
org_name = models.CharField(max_length=288)
def __unicode__(self):
return self.org_name
class Meta:
db_table = u'organization'
class Server(models.Model):
server_id = models.AutoField(primary_key=True)
server_name = models.CharField(max_length=135,verbose_name="Server Name")
org = models.ForeignKey(Organization,verbose_name="Organization")
def __unicode__(self):
return self.server_name
class Meta:
db_table = u'server'
admin.py:
class ServerAdmin(admin.ModelAdmin):
list_display = ('server_name','org')
admin.site.register(Server,ServerAdmin)
Teraz będę oczekiwać ten kod, aby pokazać mi nazwę organizacji w ChangeList View
, ale zamiast tego pobierz:
Jeśli usunąć org
w list_display
z ServerAdmin
klasie, otrzymuję to:
nie modyfikować szablon lub zastępują ModelAdmin
metod. Używam Mysql (5.1.58) jako mojej bazy danych, która jest dostarczana z repozytorium ubuntu 11.10.
Będę naprawdę zadowolony, jeśli uda mi się uzyskać sloution dla tego problemu. Z góry dziękuję.
W 'models.py' widzę' TlxServer' aw 'admin.py' tylko' Server'. Czy to literówka? – jcollado
Nie musisz definiować AutoField. Django automatycznie tworzy klucz podstawowy dla każdej tabeli. –
@jcollado: To literówka: P to przypuszczenie, że to "serwer" – Pannu