我有我正在使用在以下领域的形式。Django的形式查询集为ModelChoiceField
contact_country = forms.ModelChoiceField(queryset=Country.objects.all())
的国家模型看起来像这样
class Country(models.Model):
iso = models.CharField(max_length=2)
name = models.CharField(max_length=80)
printable_name = models.CharField(max_length=80)
iso3 = models.CharField(max_length=3,null=True, blank=True)
numcode = models.IntegerField(null=True, blank=True)
special = models.BooleanField(default=False)
def __unicode__(self):
return self.printable_name
class Meta:
ordering = [ 'printable_name' ]
的“特殊”字段指示该国是“特殊的”。如果这个国家是“特殊”的,我希望它能够出现在列表的其余部分 - 因为我相信你在网络上的其他地方看到过这种情况(例如英语国家,如澳大利亚,英国和美国,位于选择,但也与其他国家一样)。
QuerySet可以吗?或者我应该寻找其他地方?
是的,除此之外,我没有得到“特殊”的国家再次出现下面列出所有国家的名单。 – Salgo 2010-10-20 13:09:57
最佳答案,但应改为'.order_by(' - special')'。 – 2012-12-17 17:27:24