2014-01-25 4 views
0

저는 장고 프레임 워크를 처음 접했습니다. 나는 최근에 models.py에 몇 가지 모델을 만들어 :Django 사이트 관리 객체가 제대로 명명되지 않았습니다.

from django.db import models 

# Demographic tags 
class Tag(models.Model): 
    name = models.CharField(max_length=32) 
    hash_code = models.CharField(max_length=32, unique=True) 

    def __unicode__(self): 
     return self.name 

# Legislation (ex. bills, resolutions) 
class Legislation(models.Model): 
    name = models.CharField(max_length=100) 
    sponsor = models.CharField(max_length=50) 
    summary = models.TextField() # small blurb on top of bill details page 
    demographic_tags = models.ManyToManyField(Tag) 
    raw_html = models.TextField() # HTML code that includes everything else 

    def __unicode__(self): 
     return self.name 

# Concepts (ex. social security, welfare, other general terms) 
class Concept(models.Model): 
    name = models.CharField(max_length=100) 
    summary = models.TextField() 
    demographic_tags = models.ManyToManyField(Tag) 
    raw_html = models.TextField() 

    def __unicode__(self): 
     return self.name 

그때 장고 사이트 관리자 패널에서 테이블로 내 모델을 등록 할 것 인 admin.py했다 : 그것은까지 일

from django.contrib import admin 
from civicate.dev.models import Tag, Legislation, Concept 

admin.site.register(Tag) 
admin.site.register(Legislation) 
admin.site.register(Concept) 

을 이 점. Django 사이트 관리자를 열면 "입법", "태그"및 "개념"에 대한 표가 모두 성공적으로 나타났습니다. 그러나 "태그"테이블 아래에 여러 객체를 추가 할 때마다 관리자 패널에 태그 객체의 고유 이름이 아닌 "태그 객체"로 모두 표시되는 것을 보았습니다.

이 문제를 해결할 수있는 방법에 대한 아이디어가 있으십니까? 현재 시점에서 관리자 패널의 스크린 샷을 게시했습니다.

http://i.stack.imgur.com/SYTky.png

답변

0

관리자에를 사용자 정의 할 수 ModelAdmin를 사용해보십시오. Tag의 입력란에 표시 할 내용이 없으므로 좋아요 표시됩니다.

this과 같이 입력하십시오. ModelAdmin에 대한 클래스를 만들고 list_display('id', 'name',)과 같게 만듭니다.

아니면

def __unicode__(self): 
    u"%s" % self.name 

는 작동 할 수 있습니다. 유니 코드로 지정.

+0

여전히 작동하지 않습니다. 파이썬 3.3을 사용하고 있습니다. – LordChiu

+0

신경 쓰지 마세요 - 아파치를 다시로드하는 것을 잊어 버렸습니다. 감사! – LordChiu

관련 문제