2011-09-23 5 views
0

J'ai une relation ManyToMany suivre comme:Modifier le nom par défaut de relation django admin

class Subtopic(models.Model): 
    id = models.PositiveIntegerField(primary_key=True) 
    name = models.CharField(max_length=128) 

    class Meta: 
     verbose_name = 'Subtopic' 

    def __unicode__(self): 
     return self.name 

class Question(models.Model): 
    qid = models.PositiveIntegerField(primary_key=True) 
    subtopics = models.ManyToManyField(Subtopic) 

    class Meta: 
     verbose_name = 'Question' 

Dans l'interface d'administration, je voudrais changer les noms par défaut dans cette image.

http://flic.kr/p/apx3j8

Le premier nom est la relation entre deux classes telles que Subtopic et à la question. Deuxième est le nom de la classe Subtopic. Et enfin la classe Question

Le modèle Django génère automatiquement une table intermédiaire à savoir Question_Subtopics et je ne peux pas me mêler de cette table.

S'il vous plaît aidez-moi à y parvenir.

Merci.

Répondre

0

ce texte est rempli avec __unicode__, ce qui est similaire à toString() de java.

class Subtopic(models.Model): 
    ... 
    def __unicode__(self): 
     return self.name 

Il suffit de faire cela, et vous serez bien :)

+0

fceruti Remercier. Cependant, ce n'est pas correct. J'ai également rempli __unicode__ mais cela n'affecte pas le nom par défaut. –

Questions connexes