0001-drf-remove-obsolete-NullBooleanField-72067.patch
src/authentic2/a2_rbac/migrations/0017_organizationalunit_user_can_reset_password.py | ||
---|---|---|
11 | 11 |
migrations.AddField( |
12 | 12 |
model_name='organizationalunit', |
13 | 13 |
name='user_can_reset_password', |
14 |
field=models.NullBooleanField(verbose_name='Users can reset password'), |
|
14 |
field=models.BooleanField( |
|
15 |
verbose_name='Users can reset password', |
|
16 |
null=True, |
|
17 |
), |
|
15 | 18 |
), |
16 | 19 |
] |
src/authentic2/attribute_kinds.py | ||
---|---|---|
329 | 329 |
'field_class': forms.BooleanField, |
330 | 330 |
'serialize': lambda x: str(int(bool(x))), |
331 | 331 |
'deserialize': lambda x: bool(int(x)), |
332 |
'rest_framework_field_class': serializers.NullBooleanField, |
|
332 |
'rest_framework_field_class': serializers.BooleanField, |
|
333 |
'rest_framework_field_kwargs': { |
|
334 |
'allow_null': True, |
|
335 |
}, |
|
333 | 336 |
'html_value': lambda attribute, value: _('True') if value else _('False'), |
334 | 337 |
}, |
335 | 338 |
{ |
src/authentic2/migrations/0010_attributevalue_multiple.py | ||
---|---|---|
11 | 11 |
migrations.AddField( |
12 | 12 |
model_name='attributevalue', |
13 | 13 |
name='multiple', |
14 |
field=models.NullBooleanField(),
|
|
14 |
field=models.BooleanField(null=True),
|
|
15 | 15 |
preserve_default=True, |
16 | 16 |
), |
17 | 17 |
] |
src/authentic2/migrations/0012_auto_20160211_2255.py | ||
---|---|---|
1 |
import django |
|
2 | 1 |
from django.db import migrations, models |
3 | 2 | |
4 | 3 | |
... | ... | |
12 | 11 |
migrations.AlterField( |
13 | 12 |
model_name='attributevalue', |
14 | 13 |
name='multiple', |
15 |
field=models.NullBooleanField(default=False) |
|
16 |
if django.VERSION < (2,) |
|
17 |
else models.BooleanField(default=False, null=True), |
|
14 |
field=models.BooleanField(default=False, null=True), |
|
18 | 15 |
), |
19 | 16 |
] |
src/authentic2/models.py | ||
---|---|---|
205 | 205 |
} |
206 | 206 |
) |
207 | 207 |
if not self.required: |
208 |
# setting an attribute to null will delete it |
|
209 |
# NullBooleanField and BooleanField does not support allow_null |
|
210 |
if field_class is serializers.BooleanField: |
|
211 |
field_class = serializers.NullBooleanField |
|
212 |
elif field_class is not serializers.NullBooleanField: |
|
213 |
base_kwargs['allow_null'] = True |
|
208 |
base_kwargs['allow_null'] = True |
|
214 | 209 |
# if not stated otherwise by the definition of the kind, string alike fields |
215 | 210 |
# accept blank values when not required |
216 | 211 |
if issubclass(field_class, serializers.CharField) and 'allow_blank' not in base_kwargs: |
... | ... | |
221 | 216 |
base_kwargs['allow_blank'] = False |
222 | 217 |
elif issubclass(field_class, DateRestField): |
223 | 218 |
base_kwargs['allow_blank'] = False |
219 |
elif issubclass(field_class, serializers.BooleanField): |
|
220 |
base_kwargs['allow_null'] = False |
|
224 | 221 | |
225 | 222 |
base_kwargs.update(kwargs) |
226 | 223 |
return field_class(**base_kwargs) |
... | ... | |
332 | 329 |
owner = GenericForeignKey('content_type', 'object_id') |
333 | 330 | |
334 | 331 |
attribute = models.ForeignKey('Attribute', verbose_name=_('attribute'), on_delete=models.CASCADE) |
335 |
if django.VERSION < (2,): |
|
336 |
multiple = models.NullBooleanField(default=False) |
|
337 |
else: |
|
338 |
multiple = models.BooleanField(default=False, null=True) |
|
332 |
multiple = models.BooleanField(default=False, null=True) |
|
339 | 333 | |
340 | 334 |
content = models.TextField(verbose_name=_('content'), db_index=True) |
341 | 335 |
search_vector = SearchVectorField(null=True, editable=False) |
342 |
- |