diff options
Diffstat (limited to 'django/db/models/fields/__init__.py')
| -rw-r--r-- | django/db/models/fields/__init__.py | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/django/db/models/fields/__init__.py b/django/db/models/fields/__init__.py index f21a6df7f7..50d22bef0c 100644 --- a/django/db/models/fields/__init__.py +++ b/django/db/models/fields/__init__.py @@ -244,10 +244,10 @@ class Field(RegisterLookupMixin): if not self.choices: return [] - def is_value(value): - return isinstance(value, (str, Promise)) or not is_iterable(value) + def is_value(value, accept_promise=True): + return isinstance(value, (str, Promise) if accept_promise else str) or not is_iterable(value) - if is_value(self.choices): + if is_value(self.choices, accept_promise=False): return [ checks.Error( "'choices' must be an iterable (e.g., a list or tuple).", |
