Changeset 8469
- Timestamp:
- 08/22/08 14:27:26 (11 months ago)
- Files:
-
- django/trunk/django/contrib/admin/options.py (modified) (1 diff)
- django/trunk/django/db/models/fields/related.py (modified) (2 diffs)
- django/trunk/tests/modeltests/model_forms/models.py (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/trunk/django/contrib/admin/options.py
r8433 r8469 129 129 # Don't wrap raw_id fields. Their add function is in the popup window. 130 130 if not db_field.name in self.raw_id_fields: 131 formfield.widget = widgets.RelatedFieldWidgetWrapper(formfield.widget, db_field.rel, self.admin_site) 131 # formfield can be None if it came from a OneToOneField with 132 # parent_link=True 133 if formfield is not None: 134 formfield.widget = widgets.RelatedFieldWidgetWrapper(formfield.widget, db_field.rel, self.admin_site) 132 135 return formfield 133 136 django/trunk/django/db/models/fields/related.py
r8442 r8469 745 745 def __init__(self, to, to_field=None, **kwargs): 746 746 kwargs['unique'] = True 747 kwargs['editable'] = False748 747 if 'num_in_admin' not in kwargs: 749 748 kwargs['num_in_admin'] = 0 … … 755 754 if not cls._meta.one_to_one_field: 756 755 cls._meta.one_to_one_field = self 756 757 def formfield(self, **kwargs): 758 if self.rel.parent_link: 759 return None 760 return super(OneToOneField, self).formfield(**kwargs) 757 761 758 762 class ManyToManyField(RelatedField, Field): django/trunk/tests/modeltests/model_forms/models.py
r8325 r8469 54 54 def __unicode__(self): 55 55 return self.headline 56 57 class ImprovedArticle(models.Model): 58 article = models.OneToOneField(Article) 59 60 class ImprovedArticleWithParentLink(models.Model): 61 article = models.OneToOneField(Article, parent_link=True) 56 62 57 63 class PhoneNumber(models.Model): … … 774 780 [(1L, 'multicategory Entertainment'), (2L, "multicategory It's a test"), (3L, 'multicategory Third'), (4L, 'multicategory Fourth')] 775 781 782 # OneToOneField ############################################################### 783 784 >>> class ImprovedArticleForm(ModelForm): 785 ... class Meta: 786 ... model = ImprovedArticle 787 >>> ImprovedArticleForm.base_fields.keys() 788 ['article'] 789 790 >>> class ImprovedArticleWithParentLinkForm(ModelForm): 791 ... class Meta: 792 ... model = ImprovedArticleWithParentLink 793 >>> ImprovedArticleWithParentLinkForm.base_fields.keys() 794 [] 795 776 796 # PhoneNumberField ############################################################ 777 797
