Changeset 748
- Timestamp:
- 09/30/05 12:17:50 (3 years ago)
- Files:
-
- django/branches/new-admin/django/core/formfields.py (modified) (2 diffs)
- django/branches/new-admin/django/core/meta/fields.py (modified) (2 diffs)
- django/branches/new-admin/django/core/meta/__init__.py (modified) (1 diff)
- django/branches/new-admin/django/views/admin/main.py (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/branches/new-admin/django/core/formfields.py
r740 r748 301 301 def convert_post_data(self, new_data): 302 302 name = self.get_member_name() 303 if new_data.has_key( name):304 d = new_data.getlist( name)303 if new_data.has_key(self.field_name): 304 d = new_data.getlist(self.field_name) 305 305 #del new_data[self.field_name] 306 new_data.setlist(name, 307 [self.__class__.html2python(data) 308 for data in d]) 306 try: 307 converted_data = [self.__class__.html2python(data) 308 for data in d] 309 except ValueError: 310 converted_data = d 311 new_data.setlist(name, converted_data) 312 309 313 else: 310 314 try: … … 861 865 raise validators.CriticalValidationError, e.messages 862 866 867 def html2python(data): 868 return data.split(','); 869 863 870 class XMLLargeTextField(LargeTextField): 864 871 """ django/branches/new-admin/django/core/meta/fields.py
r740 r748 164 164 Returns a list of field names that this object adds to the manipulator. 165 165 """ 166 return [name_prefix + self. column]166 return [name_prefix + self.name] 167 167 168 168 def get_manipulator_fields(self, opts, manipulator, change, name_prefix='', rel=False): … … 639 639 return [formfields.IntegerField] 640 640 641 def get_db_prep_save(self,value): 642 if value == '': 643 return None 644 else: 645 return int(value) 646 641 647 def flatten_data(self, obj = None): 642 648 if not obj: django/branches/new-admin/django/core/meta/__init__.py
r740 r748 860 860 if cursor.fetchone(): 861 861 db_values = [f.get_db_prep_save(f.pre_save(getattr(self, f.column), False)) for f in non_pks] 862 while 1:863 try:864 idx = db_values.index('')865 non_pks[idx:idx+1] = []866 db_values[idx:idx +1] = []867 except: break868 862 cursor.execute("UPDATE %s SET %s WHERE %s=%%s" % (opts.db_table, 869 863 ','.join(['%s=%%s' % f.column for f in non_pks]), opts.pk.column), django/branches/new-admin/django/views/admin/main.py
r741 r748 687 687 new_data.update(request.FILES) 688 688 errors = manipulator.get_validation_errors(new_data) 689 manipulator.do_html2python(new_data) 690 689 691 if not errors and not request.POST.has_key("_preview"): 690 692 for f in opts.many_to_many: 691 693 if f.rel.raw_id_admin: 692 694 new_data.setlist(f.name, new_data[f.name].split(",")) 693 manipulator.do_html2python(new_data)694 695 new_object = manipulator.save(new_data) 695 696 pk_value = getattr(new_object, opts.pk.column) … … 712 713 request.user.add_message(msg) 713 714 return HttpResponseRedirect(post_url) 714 if request.POST.has_key("_preview"):715 manipulator.do_html2python(new_data)715 # if request.POST.has_key("_preview"): # Always happens anyway. 716 # manipulator.do_html2python(new_data) 716 717 else: 717 718 # Add default data. … … 758 759 759 760 errors = manipulator.get_validation_errors(new_data) 761 762 manipulator.do_html2python(new_data) 760 763 if not errors and not request.POST.has_key("_preview"): 761 for f in opts.many_to_many:762 if f.rel.raw_id_admin:763 new_data.setlist(f.name, new_data[f.name].split(","))764 manipulator.do_html2python(new_data)764 # Now done in commaseparatedint 765 # for f in opts.many_to_many: 766 # if f.rel.raw_id_admin: 767 # new_data.setlist(f.name, new_data[f.name].split(",")) 765 768 new_object = manipulator.save(new_data) 766 769 pk_value = getattr(new_object, opts.pk.column) … … 795 798 request.user.add_message(msg) 796 799 return HttpResponseRedirect("../") 797 if request.POST.has_key("_preview"):798 manipulator.do_html2python(new_data)800 # if request.POST.has_key("_preview"): # always happens 801 # manipulator.do_html2python(new_data) 799 802 else: 800 803 # Populate new_data with a "flattened" version of the current data.
