如何在Django ModelForm中订购字段? [英] How can I order fields in Django ModelForm?

查看:126
本文介绍了如何在Django ModelForm中订购字段?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个'订单'型号:

  class Order(models.Model):
date_time = models .DateTimeField()
#其他东西

我正在使用Django ModelForm类来呈现一个表单,但我想分别显示日期和时间小部件。我想出了这一点:

  class Form(forms.ModelForm):
class Meta:
model = Order
exclude =('date_time',)
date = forms.DateField()
time = forms.TimeField()
/ pre>

问题是我想将这些字段放在其他东西之间的某个位置

解决方案

您可以在表单的Meta类中使用fields = [...,'date','time',...]。请参阅: http:// docs。 djangoproject.com/en/dev/topics/forms/modelforms/#changing-the-order-of-fields


I have an 'order' Model:

class Order(models.Model):
     date_time=models.DateTimeField()
     # other stuff

And I'm using Django ModelForm class to render a form, but I want to display date and time widgets separately. I've came up with this:

class Form(forms.ModelForm): 
    class Meta:
        model = Order
        exclude = ('date_time',)
        date = forms.DateField()
        time = forms.TimeField()

The problem is that I want to put these fields somewhere between 'other stuff'

解决方案

You can use fields = [ ..., 'date', 'time', ... ] on Meta class of your form. See: http://docs.djangoproject.com/en/dev/topics/forms/modelforms/#changing-the-order-of-fields

这篇关于如何在Django ModelForm中订购字段?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆