Django显示空字段而不是ajax select小部件(filter_horizo​​ntal)

时间:2012-06-22 14:59:40

标签: python django django-admin

Django admin显示一个空字段而不是“ajax select widget”。

admin.py

尝试了另一个项目 - 在两个m2m关系的模型中,完全相同的模型具有不同的名称。像一个领域的魅力,在另一个领域显示空白的地方。任何帮助或链接?

models.py

class Company(models.Model):
    """Companies - customers """
    title = models.CharField('Nosaukums', blank=False, max_length=200)
    is_costumer = models.BooleanField('Pasūtītājs', default=False)
    is_subcontractor = models.BooleanField('Apakšuzņēmējs', default=False)

    class Meta:
        verbose_name = 'Uzņēmums'
        verbose_name_plural = 'Uzņēmumi'

    def __unicode__(self):
        return self.title

class Project(models.Model):
    """Projects"""

    number = models.IntegerField('Īsais numurs', blank=False, null=False)
    title = models.CharField('Nosaukums', blank=False, max_length=250)
    customers = models.ManyToManyField(Company, verbose_name='Pasūtītāji', blank=True, null=True)
    is_active = models.BooleanField('Aktīvs', default=True)
    notes = models.TextField('Piezīmes', blank=True)

    class Meta:
        verbose_name = 'Projekts'
        verbose_name_plural = 'Projekti'

    def costumer_list(self):
        list = "pasūtītāji"
        return list

    def __unicode__(self):
        return self.title

2 个答案:

答案 0 :(得分:1)

根据您在上面发布的模型和管理文件的图片,您的filter_hoizontal变量应该是filter_horizontal = ('customers',)而不是filter_horizontal = ('costumers',)换句话说,客户的拼写不同模型和管理文件。

答案 1 :(得分:0)

我的某些m2m字段不允许form_horizontal。我发现这些特定领域唯一的共同点就是它们全部用于类别,在我的母语中,这是categorieën,它恰好强调了最后 e

请参阅下面的字段定义:

categories = models.ManyToManyField ( 
                              'FAQCategories',
               verbose_name = 'Categorieën',
               blank        = True,
             )

这里的问题是我没有告诉python我的字符串应该被视为Unicode。当我将verbose_name更改为u'Categoriën'时,它就有效了!

回想起来,这对我来说非常明显,但我希望这会对你或其他人有所帮助。正确定义这些字符串,吸取教训!