Changeset 6717
- Timestamp:
- 11/25/07 20:39:48 (1 year ago)
- Files:
-
- django/trunk/django/newforms/widgets.py (modified) (1 diff)
- django/trunk/tests/regressiontests/forms/widgets.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/trunk/django/newforms/widgets.py
r6671 r6717 318 318 319 319 class RadioSelect(Select): 320 renderer = RadioFieldRenderer 320 321 321 322 def __init__(self, *args, **kwargs): 322 self.renderer = kwargs.pop('renderer', None) 323 if not self.renderer: 324 self.renderer = RadioFieldRenderer 323 # Override the default renderer if we were passed one. 324 renderer = kwargs.pop('renderer', None) 325 if renderer: 326 self.renderer = renderer 325 327 super(RadioSelect, self).__init__(*args, **kwargs) 326 328 django/trunk/tests/regressiontests/forms/widgets.py
r6594 r6717 664 664 <label><input type="radio" name="beatle" value="R" /> Ringo</label> 665 665 666 Or you can use custom RadioSelect fields that use your custom renderer. 667 >>> class CustomRadioSelect(RadioSelect): 668 ... renderer = MyRenderer 669 >>> w = CustomRadioSelect() 670 >>> print w.render('beatle', 'G', choices=(('J', 'John'), ('P', 'Paul'), ('G', 'George'), ('R', 'Ringo'))) 671 <label><input type="radio" name="beatle" value="J" /> John</label><br /> 672 <label><input type="radio" name="beatle" value="P" /> Paul</label><br /> 673 <label><input checked="checked" type="radio" name="beatle" value="G" /> George</label><br /> 674 <label><input type="radio" name="beatle" value="R" /> Ringo</label> 675 666 676 A RadioFieldRenderer object also allows index access to individual RadioInput 667 677 objects.
