1. yes by overlriding the init

class myForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
    super(myForm, self).__init__(*args, **kwargs)
    self.fields.keyOrder = ['foo', 'bar',...]

2. in the same way you could use
    self.fields['foo'].label = self.fields['foo'].help_text


On Aug 22, 10:40 pm, lingrlongr <[EMAIL PROTECTED]> wrote:
> So by using a combination of fields and exclude in the Meta class, I
> can choose what fields I want for that form.  Nice!   :)
>
> Two questions though:
>
> 1.  Will fields be presented in the order specified in the fields
> tuple?
> 2.  In my original model/form diagram, will there be a way for me to
> use the model's help_text as the field label?
>
> Keith
>
> On Aug 22, 4:24 pm, lingrlongr <[EMAIL PROTECTED]> wrote:
>
> > Ah, so I guess ModelForm will work with the FormWizard?  I'll have to
> > look through that documentation.  Reading documentation is easier than
> > pulling my hair out!  =)
>
> > Thanks Rajesh.
>
> > On Aug 22, 4:14 pm, Rajesh Dhawan <[EMAIL PROTECTED]> wrote:
>
> > > Hi Keith,
>
> > > > I'm using the form wizard for a project.  All the field names in
> > > > models.py coincide with the field names in forms.py.  There is ONE
> > > > field that is consistently, yet sporadically, causing problems and I
> > > > cannot see why.
>
> > > > # models.py
> > > > class PurchaseApplication(BasicApplication):
> > > >     down_payment_assets = models.IntegerField(help_text=u'Available
> > > > assets for down payment')
>
> > > > # forms.py
> > > > class PurchaseForm3_yes(forms.Form):
> > > >     down_payment_assets = forms.IntegerField(label=u'Available assets
> > > > for down payment ($)')
>
> > > > So, as I said, all the field names for the model and the form, so to
> > > > save I use:
>
> > > > class PurchaseWizard(FormWizard):
> > > >     def done(self, request, form_list):
> > > >         data = {}
> > > >         for f in form_list:
> > > >             data.update(f.cleaned_data)
>
> > > >         o = PurchaseApplication()
>
> > > >         for f in data:
> > > >             o.__setattr__(f, data[f])
> > > >         o.site = Site.objects.get_current()
> > > >         o.save()
>
> > > > So, its only the down_payment_assets field that is causing problems,
> > > > but only sporadically.  The error text looks like this:
>
> > > > Exception Type:         OperationalError
> > > > Exception Value:        (1048, "Column 'down_payment_assets' cannot be
> > > > null")
>
> > > > But the request.POST vars in actally show a value!!
>
> > > > Variable        Value
> > > > 1-credit_rating         u'1'
> > > > 2-purchase_home_type    u'1'
> > > > 2-down_payment_assets   u'30000'
> > > > <-----------------------------
> > > > 0-best_time     u'1'
> > > > 1-contact_me    u'N'
> > > > wizard_step     u'2'
>
> > > > Thoughts?
>
> > > Looks like o.__setattr__(f, data[f]) is not doing it's job for the
> > > field down_payment_assets. You might want to print or log what's in
> > > 'data' before you iterate over it.
>
> > > Also, are you aware that Django's built-in ModelForm provides similar
> > > functionality to what you seem to be trying to achieve above?
>
> > >http://www.djangoproject.com/documentation/modelforms/
>
> > > -Rajesh D
>
>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to