Skip to content

Commit add0e85

Browse files
author
Oliver Sauder
committed
Deconstruct empty list of required and uniqueness keyword arguments
This makes it consistent with base django field which deconstructs all fields which are different to default arguments. Additionally does it fix issues for custom fields which depend on differentiating between required=None and required=[] like LocalizedField.
1 parent d291710 commit add0e85

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

psqlextra/fields/hstore_field.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
from typing import List, Tuple, Union
22

3+
from django.contrib.postgres.fields import HStoreField as DjangoHStoreField
34
from django.db.models.expressions import Expression
45
from django.db.models.fields import Field
5-
from django.contrib.postgres.fields import HStoreField as DjangoHStoreField
66

77
from psqlextra.expressions import HStoreValue
88

@@ -59,10 +59,10 @@ def deconstruct(self):
5959
name, path, args, kwargs = super(
6060
HStoreField, self).deconstruct()
6161

62-
if self.uniqueness:
62+
if self.uniqueness is not None:
6363
kwargs['uniqueness'] = self.uniqueness
6464

65-
if self.required:
65+
if self.required is not None:
6666
kwargs['required'] = self.required
6767

6868
return name, path, args, kwargs

tests/test_hstore_field.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ def test_deconstruct():
77
"""Tests whether the :see:HStoreField's deconstruct()
88
method works properly."""
99

10-
original_kwargs = dict(uniqueness=['beer', 'other'])
10+
original_kwargs = dict(uniqueness=['beer', 'other'], required=[])
1111
_, _, _, new_kwargs = HStoreField(**original_kwargs).deconstruct()
1212

1313
for key, value in original_kwargs.items():

0 commit comments

Comments
 (0)