'Django Forms: field_order fails to work in forms.py

My field_order variable fails to correctly set the order. I'm trying to reorganize the form so that the bottom two fields are at the top of the form, as illustrated here: enter image description here

Here is my class from forms.py. I set the field_order in class Meta, but it doesn't re-arrange my form and I don't know why? I do not get any errors when I run my code either.

class changeLockForm(forms.Form):
    def __init__(self, *args, **kwargs):
        user = kwargs.pop('user')
        super(changeLockForm, self).__init__(*args, **kwargs)
        self.fields['roomLoc'] = forms.ModelChoiceField(queryset=Models.Room.objects.filter(owner=None) | Models.Room.objects.filter(owner=user), label='Room Location')
        self.fields['lockName'] = forms.ModelChoiceField(queryset=Models.Lock.objects.filter(owner=None) | Models.Lock.objects.filter(owner=user), label="Current Lock Name")
        
    newNameBool = forms.BooleanField(required=False, label='Change Name? Y/N',)
    newLockName = forms.CharField(required=False, min_length=2, max_length=20, label='New Lock Name', disabled=True)
    state = forms.BooleanField(required=False, label='LOCKED/UNLOCKED')
    code1 = forms.IntegerField(initial=1000, min_value=1000, max_value=9999, label='First Code')
    code2 = forms.IntegerField(initial=1000, min_value=1000, max_value=9999, label='Second Code')
    code3 = forms.IntegerField(initial=1000, min_value=1000, max_value=9999, label='Third Code')
    code4 = forms.IntegerField(initial=1000, min_value=1000, max_value=9999, label='Fourth Code')
    class Meta:
        model = Models.Lock
        fields = ['lockName','newNameBool','newLockName','roomLoc', 'state', 'code1', 'code2', 'code3', 'code4']
        field_order = ['lockName', 'newNameBool', 'newLockName', 'roomLoc', 'state', 'code1', 'code2', 'code3', 'code4']


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source