Django 按顺序列出模型字段
Django listing model fields in order
我正在尝试按照模型创建的顺序列出模型字段。我试过 ._meta.get_all_field_names()
但它似乎是 return 一个随机词典。如何在视图中列出有序的字段列表?
我的意思是:我有一个像这样的模型:
class UserInfo(models.Model):
concerning = models.ForeignKey(User)
title = models.CharField(max_length=100, choices=zip(titles, titles))
first_name = models.CharField(max_length=100 )
family_name = models.CharField(max_length=100, )
gender = models.CharField(max_length=1 , choices=(("f", "female"), ("m", "male")))
nationality = models.CharField(max_length=100, blank=True, choices=(countries))
email2 = models.EmailField()
Telephone = models.CharField(max_length=30)
webpage = models.URLField(max_length=100, blank=True)
我想按顺序列出字段:concerning / title / first_name / family_name/ etc...
Django 的内置函数可能会有所帮助:
from django.forms.models import fields_for_model
...
fields = fields_for_model(UserInfo).keys()
returns
['concerning', 'title', 'first_name', ...]
我正在尝试按照模型创建的顺序列出模型字段。我试过 ._meta.get_all_field_names()
但它似乎是 return 一个随机词典。如何在视图中列出有序的字段列表?
我的意思是:我有一个像这样的模型:
class UserInfo(models.Model):
concerning = models.ForeignKey(User)
title = models.CharField(max_length=100, choices=zip(titles, titles))
first_name = models.CharField(max_length=100 )
family_name = models.CharField(max_length=100, )
gender = models.CharField(max_length=1 , choices=(("f", "female"), ("m", "male")))
nationality = models.CharField(max_length=100, blank=True, choices=(countries))
email2 = models.EmailField()
Telephone = models.CharField(max_length=30)
webpage = models.URLField(max_length=100, blank=True)
我想按顺序列出字段:concerning / title / first_name / family_name/ etc...
Django 的内置函数可能会有所帮助:
from django.forms.models import fields_for_model
...
fields = fields_for_model(UserInfo).keys()
returns
['concerning', 'title', 'first_name', ...]