mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-02-03 21:24:33 +03:00
Move default validation back into init method
This commit is contained in:
parent
f2452936e9
commit
fe12816b82
|
@ -62,6 +62,14 @@ class RelatedField(Field):
|
|||
self.queryset = kwargs.pop('queryset', self.queryset)
|
||||
self.html_cutoff = kwargs.pop('html_cutoff', self.html_cutoff)
|
||||
self.html_cutoff_text = kwargs.pop('html_cutoff_text', self.html_cutoff_text)
|
||||
|
||||
default_get_queryset = getattr(RelatedField.get_queryset, '__func__',
|
||||
RelatedField.get_queryset) # Python 2/3
|
||||
if self.get_queryset.__func__ == default_get_queryset:
|
||||
assert self.queryset is not None or kwargs.get('read_only', None), (
|
||||
'Relational field must provide a `queryset` argument, '
|
||||
'or set read_only=`True`.'
|
||||
)
|
||||
assert not (self.queryset is not None and kwargs.get('read_only', None)), (
|
||||
'Relational fields should not provide a `queryset` argument, '
|
||||
'when setting read_only=`True`.'
|
||||
|
@ -108,10 +116,6 @@ class RelatedField(Field):
|
|||
|
||||
def get_queryset(self):
|
||||
queryset = self.queryset
|
||||
assert queryset is not None, (
|
||||
'Relational field must provide a `queryset` argument, '
|
||||
'or set read_only=`True`.'
|
||||
)
|
||||
if isinstance(queryset, (QuerySet, Manager)):
|
||||
# Ensure queryset is re-evaluated whenever used.
|
||||
# Note that actually a `Manager` class may also be used as the
|
||||
|
|
Loading…
Reference in New Issue
Block a user