          False
      }
      NULL_VALUES = {'null', 'Null', 'NULL', '', None}
  
      def to_internal_value(self, data):
          with contextlib.suppress(TypeError):
              if data in self.TRUE_VALUES:
                  return True
              elif data in self.FALSE_VALUES:
 
</s> remove         as `False` by BooleanField.
 </s> add         as `False` by BooleanField if allow_null=False. </s> remove         as `False` by BooleanField, even if the field is required=False.
 </s> add         as `False` by BooleanField when the field is required=False
        and allow_null=False.
    def __init__(self, **kwargs):
        if kwargs.get('allow_null', False):
            self.default_empty_html = None
            self.initial = None
        super().__init__(**kwargs)

          False
      }
      NULL_VALUES = {'null', 'Null', 'NULL', '', None}
  
    def __init__(self, **kwargs):
        if kwargs.get('allow_null', False):
            self.default_empty_html = None
            self.initial = None
        super().__init__(**kwargs)

      def to_internal_value(self, data):
          with contextlib.suppress(TypeError):
              if data in self.TRUE_VALUES:
                  return True
              elif data in self.FALSE_VALUES:
keep keep keep add keep keep keep keep keep
 Fix BooleanField's allow_null behavior (#8614)

* Fix BooleanField's allow_null behavior

* Update rest_framework.fields

- Use .get with default value for 'allow_null' kwarg in BooleanField's
  init 
rest_framework/fields.py