Changeset 2045
- Timestamp:
- 01/17/06 19:52:28 (3 years ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/branches/magic-removal/django/contrib/admin/views/main.py
r2044 r2045 82 82 LogEntry.objects.log_action(user.id, opts.get_content_type_id(), pk_value, str(new_object), ADDITION) 83 83 84 85 84 def get_javascript_imports(opts, auto_populated_fields, ordered_objects, field_sets): 86 85 # Put in any necessary JavaScript imports. … … 135 134 self.related_url = url_for_model(field.rel.to) 136 135 137 def _fetch_existing_display(self, func_name):138 class_dict = self.original.__class__.__dict__139 func = class_dict.get(func_name)140 return func(self.original)141 142 def _fill_existing_display(self):143 if getattr(self, '_display_filled', False):144 return145 # HACK146 if isinstance(self.field.rel, models.ManyToOne):147 func_name = 'get_%s' % self.field.name148 self._display = self._fetch_existing_display(func_name)149 elif isinstance(self.field.rel, models.ManyToMany):150 func_name = 'get_%s_list' % self.field.rel.singular151 self._display = ", ".join([str(obj) for obj in self._fetch_existing_display(func_name)])152 self._display_filled = True153 154 136 def existing_display(self): 155 self._fill_existing_display() 156 return self._display 137 try: 138 return self._display 139 except AttributeError: 140 if isinstance(self.field.rel, models.ManyToOne): 141 self._display = getattr(self.original, 'get_%s' % self.field.name)() 142 elif isinstance(self.field.rel, models.ManyToMany): 143 self._display = ", ".join([str(obj) for obj in getattr(self.original, 'get_%s_list' % self.field.rel.singular)()]) 144 return self._display 157 145 158 146 def __repr__(self):
