mirror of
https://github.com/django/django.git
synced 2025-07-05 10:19:20 +00:00
newforms-admin: Fixed #4046 - ForeignKey's formfield does not respect limit_choices_to. Thanks ubernostrum, programmerq
git-svn-id: http://code.djangoproject.com/svn/django/branches/newforms-admin@7733 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
420f19aa35
commit
0ad37188cf
@ -672,7 +672,7 @@ class ForeignKey(RelatedField, Field):
|
|||||||
setattr(cls, related.get_accessor_name(), ForeignRelatedObjectsDescriptor(related))
|
setattr(cls, related.get_accessor_name(), ForeignRelatedObjectsDescriptor(related))
|
||||||
|
|
||||||
def formfield(self, **kwargs):
|
def formfield(self, **kwargs):
|
||||||
defaults = {'form_class': forms.ModelChoiceField, 'queryset': self.rel.to._default_manager.all()}
|
defaults = {'form_class': forms.ModelChoiceField, 'queryset': self.rel.to._default_manager.complex_filter(self.rel.limit_choices_to)}
|
||||||
defaults.update(kwargs)
|
defaults.update(kwargs)
|
||||||
return super(ForeignKey, self).formfield(**defaults)
|
return super(ForeignKey, self).formfield(**defaults)
|
||||||
|
|
||||||
@ -810,7 +810,7 @@ class ManyToManyField(RelatedField, Field):
|
|||||||
setattr(instance, self.attname, data)
|
setattr(instance, self.attname, data)
|
||||||
|
|
||||||
def formfield(self, **kwargs):
|
def formfield(self, **kwargs):
|
||||||
defaults = {'form_class': forms.ModelMultipleChoiceField, 'queryset': self.rel.to._default_manager.all()}
|
defaults = {'form_class': forms.ModelMultipleChoiceField, 'queryset': self.rel.to._default_manager.complex_filter(self.rel.limit_choices_to)}
|
||||||
defaults.update(kwargs)
|
defaults.update(kwargs)
|
||||||
# If initial is passed in, it's a list of related objects, but the
|
# If initial is passed in, it's a list of related objects, but the
|
||||||
# MultipleChoiceField takes a list of IDs.
|
# MultipleChoiceField takes a list of IDs.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user