Django

Code

Changeset 7391

Show
Ignore:
Timestamp:
03/30/08 18:54:55 (3 months ago)
Author:
jkocherhans
Message:

newforms-admin: Fixed #6926. Formset management forms now use the proper prefix. Thanks, msundstr.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/branches/newforms-admin/AUTHORS

    r7383 r7391  
    264264    mrmachine <real.human@mrmachine.net> 
    265265    Robin Munn <http://www.geekforgod.com/> 
     266    msundstr 
    266267    Robert Myers <myer0052@gmail.com> 
    267268    NebojÅ¡a Dorđević 
  • django/branches/newforms-admin/django/newforms/formsets.py

    r7270 r7391  
    4141        # initialization is different depending on whether we recieved data, initial, or nothing 
    4242        if data or files: 
    43             self.management_form = ManagementForm(data, files, auto_id=self.auto_id, prefix=self.prefix) 
     43            self.management_form = ManagementForm(data, auto_id=self.auto_id, prefix=self.prefix) 
    4444            if self.management_form.is_valid(): 
    4545                self._total_form_count = self.management_form.cleaned_data[TOTAL_FORM_COUNT] 
     
    4747            else: 
    4848                raise ValidationError('ManagementForm data is missing or has been tampered with') 
    49         elif initial: 
    50             self._initial_form_count = len(initial) 
    51             self._total_form_count = self._initial_form_count + self.extra 
    5249        else: 
    53             self._initial_form_count = 0 
    54             self._total_form_count = self.extra 
    55         initial = {TOTAL_FORM_COUNT: self._total_form_count, INITIAL_FORM_COUNT: self._initial_form_count} 
    56         self.management_form = ManagementForm(initial=initial, auto_id=auto_id, prefix=prefix) 
     50            if initial: 
     51                self._initial_form_count = len(initial) 
     52                self._total_form_count = self._initial_form_count + self.extra 
     53            else: 
     54                self._initial_form_count = 0 
     55                self._total_form_count = self.extra 
     56            initial = {TOTAL_FORM_COUNT: self._total_form_count, INITIAL_FORM_COUNT: self._initial_form_count} 
     57            self.management_form = ManagementForm(initial=initial, auto_id=self.auto_id, prefix=self.prefix) 
    5758 
    5859        # instantiate all the forms and put them in self.forms 
  • django/branches/newforms-admin/tests/regressiontests/forms/formsets.py

    r7270 r7391  
    495495...     print error 
    496496 
     497 
     498# Regression test for #6926 ################################################## 
     499 
     500Make sure the management form has the correct prefix. 
     501 
     502>>> formset = FavoriteDrinksFormSet() 
     503>>> formset.management_form.prefix 
     504'form' 
     505 
     506>>> formset = FavoriteDrinksFormSet(data={}) 
     507>>> formset.management_form.prefix 
     508'form' 
     509 
     510>>> formset = FavoriteDrinksFormSet(initial={}) 
     511>>> formset.management_form.prefix 
     512'form' 
     513 
    497514"""