Changeset 6156
- Timestamp:
- 09/13/07 22:29:39 (1 year ago)
- Files:
-
- django/trunk/django/newforms/fields.py (modified) (2 diffs)
- django/trunk/django/newforms/forms.py (modified) (1 diff)
- django/trunk/tests/regressiontests/forms/tests.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/trunk/django/newforms/fields.py
r6152 r6156 3 3 """ 4 4 5 import copy 5 6 import datetime 6 7 import re … … 100 101 """ 101 102 return {} 103 104 def __deepcopy__(self, memo): 105 result = copy.copy(self) 106 memo[id(self)] = result 107 result.widget = copy.deepcopy(self.widget, memo) 108 return result 102 109 103 110 class CharField(Field): django/trunk/django/newforms/forms.py
r6142 r6156 32 32 33 33 def copy(self): 34 return SortedDictFromList([(k, copy. copy(v)) for k, v in self.items()])34 return SortedDictFromList([(k, copy.deepcopy(v)) for k, v in self.items()]) 35 35 36 36 class DeclarativeFieldsMetaclass(type): django/trunk/tests/regressiontests/forms/tests.py
r6152 r6156 2691 2691 ... if names_required: 2692 2692 ... self.fields['first_name'].required = True 2693 ... self.fields['first_name'].widget.attrs['class'] = 'required' 2693 2694 ... self.fields['last_name'].required = True 2695 ... self.fields['last_name'].widget.attrs['class'] = 'required' 2694 2696 >>> f = Person(names_required=False) 2695 2697 >>> f['first_name'].field.required, f['last_name'].field.required 2696 2698 (False, False) 2699 >>> f['first_name'].field.widget.attrs, f['last_name'].field.widget.attrs 2700 ({}, {}) 2697 2701 >>> f = Person(names_required=True) 2698 2702 >>> f['first_name'].field.required, f['last_name'].field.required 2699 2703 (True, True) 2704 >>> f['first_name'].field.widget.attrs, f['last_name'].field.widget.attrs 2705 ({'class': 'required'}, {'class': 'required'}) 2700 2706 >>> f = Person(names_required=False) 2701 2707 >>> f['first_name'].field.required, f['last_name'].field.required 2702 2708 (False, False) 2709 >>> f['first_name'].field.widget.attrs, f['last_name'].field.widget.attrs 2710 ({}, {}) 2703 2711 >>> class Person(Form): 2704 2712 ... first_name = CharField(max_length=30)
