Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Django, unique IDs for form fields

I have a simple Django form:

class CommentForm(forms.Form):
    comment = forms.CharField(max_length=2000, required=True)
    post_id = forms.CharField(max_length=2000, widget=forms.HiddenInput, required=True)
    parent_id = forms.CharField(max_length=2000, widget=forms.HiddenInput, required=True)

Now I want to print this form several times on my page - I am doing it through a template tag, so the new form is created each time. The problem is, that I get the same ID's for all fields.

I know about the prefix, but I do not want to change field names, because there is one handler for all forms, only to set unique IDs.

So my question:

  • Is there a way to make Django set unique IDs if I want to output a form several times, without changing the names of fields?
  • If not, is there a way to make Django not to output IDs at all?
like image 411
Silver Light Avatar asked May 16 '11 09:05

Silver Light


1 Answers

You can control how the automatic IDs are generated with the auto_id parameter when you create a new instance of that form

Have a look here (search for auto_id):

http://docs.djangoproject.com/en/dev/ref/forms/api/#configuring-html-label-tags

like image 66
Davo Avatar answered Sep 22 '22 03:09

Davo