Thanks alex, that worked, I have the extra field, and now to figure out how to to tie it in to the main form and my user model.
On Mar 9, 10:12 am, Alex Gaynor <alex.gay...@gmail.com> wrote: > On Mon, Mar 9, 2009 at 10:10 AM, mike171562 <support.desk....@gmail.com>wrote: > > > > > > > thanks malcolm, thats doesnt seem to work though > > > class UserModelForm(forms.ModelForm): > > class Meta: > > model = User > > account = forms.CharField(max_length=50) > > fields = > > ('username','email','first_name','last_name','account') > > adding the 'account' field as extra is not displayed in the ((field)) > > form in the template. > > > On Mar 6, 8:40 pm, Malcolm Tredinnick <malc...@pointy-stick.com> > > wrote: > > > On Fri, 2009-03-06 at 12:25 -0800, mike171562 wrote: > > > > I am using Django's ModelForm in a template im working on. I am trying > > > > to use it to display the Django User Object and an extension I added > > > > of the user model, what would be the correct way to display my User > > > > model extension in my template, I would like to be able to edit the > > > > User information and the account number I have added all from the same > > > > form. Thanks. > > > > A Django Form object represents only a part of an HTML form (which is > > > why need to write the HTML "form" tag in the template, for example). You > > > can pass multiple form objects through from your view function to the > > > template and render both of them inside the same HTML form. > > > > If you want to intermingle fields, you can define extra form fields on a > > > model form. For example: > > > > class MyForm(forms.ModelForm): > > > extra = forms.CharField(max_length=50) > > > > class Meta: > > > model = models.Tag > > > > That will put the extra fields at the end of the model form. > > > > If you want to put the extra fields in the middle of the model fields > > > somehow, you can either write a custom __init__ method to tweak the > > > field ordering (you'll have to read the forms code a bit to see what > > > needs tweaking). Alternatively, you can take the not unreasonable > > > approach that you've gone beyond the scope of modelforms by this point > > > and just write a normal Form class that contains the fields. > > > > I've always been an interested observer of people trying to make > > > automatic model-related forms do all sorts of funky things, because I > > > hardly ever use them. So many of my use-cases don't have forms mapping > > > directly to models, so I write a normal Form class and then my view > > > knows how to take fields from the Form instance and convert that data to > > > the appropriate models. At some point, it's a fairly grief-free way to > > > handle anything beyond the straight model -> form -> model conversion. > > > But, as you can see from the above, you aren't short of options here. > > > > Regards, > > > Malcolm > > The account = part shouldn't be in the inner Meta class. > > Alex > > -- > "I disapprove of what you say, but I will defend to the death your right to > say it." --Voltaire > "The people's good is the highest law."--Cicero --~--~---------~--~----~------------~-------~--~----~ 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 django-users+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---