Changeset 7516
- Timestamp:
- 05/05/08 12:31:23 (6 days ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/branches/newforms-admin/django/contrib/admin/widgets.py
r7262 r7516 8 8 from django.utils.translation import ugettext as _ 9 9 from django.utils.safestring import mark_safe 10 from django.utils.encoding import force_unicode 10 11 from django.conf import settings 11 12 … … 136 137 return [value] 137 138 return None 139 140 def _has_changed(self, initial, data): 141 if initial is None: 142 initial = [] 143 if data is None: 144 data = [] 145 if len(initial) != len(data): 146 return True 147 for pk1, pk2 in zip(initial, data): 148 if force_unicode(pk1) != force_unicode(pk2): 149 return True 150 return False 138 151 139 152 class RelatedFieldWidgetWrapper(object): django/branches/newforms-admin/tests/regressiontests/admin_widgets/models.py
r7262 r7516 67 67 >>> print conditional_escape(w.render('test', [m1.pk, m2.pk], attrs={})) 68 68 <input type="text" name="test" value="1,2" class="vManyToManyRawIdAdminField" /><a href="../../../admin_widgets/member/" class="related-lookup" id="lookup_id_test" onclick="return showRelatedObjectLookupPopup(this);"> <img src="%(ADMIN_MEDIA_PREFIX)simg/admin/selector-search.gif" width="16" height="16" alt="Lookup"></a> 69 >>> w._has_changed(None, None) 70 False 71 >>> w._has_changed([], None) 72 False 73 >>> w._has_changed(None, [u'1']) 74 True 75 >>> w._has_changed([1, 2], [u'1', u'2']) 76 False 77 >>> w._has_changed([1, 2], [u'1']) 78 True 79 >>> w._has_changed([1, 2], [u'1', u'3']) 80 True 69 81 70 82 """ % {
