Merge pull request #2441 from bagerard/remove_useless_cls_var

minor improvement in code
This commit is contained in:
Bastien Gérard 2020-12-08 23:22:57 +01:00 committed by GitHub
commit fb8f02d0c0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 17 deletions

View File

@ -1,5 +1,4 @@
import operator import operator
import warnings
import weakref import weakref
from bson import DBRef, ObjectId, SON from bson import DBRef, ObjectId, SON
@ -18,7 +17,7 @@ class BaseField:
may be added to subclasses of `Document` to define a document's schema. may be added to subclasses of `Document` to define a document's schema.
""" """
name = None name = None # set in TopLevelDocumentMetaclass
_geo_index = False _geo_index = False
_auto_gen = False # Call `generate` to generate a value _auto_gen = False # Call `generate` to generate a value
_auto_dereference = True _auto_dereference = True
@ -265,7 +264,9 @@ class ComplexBaseField(BaseField):
items in a list / dict rather than one at a time. items in a list / dict rather than one at a time.
""" """
field = None def __init__(self, field=None, **kwargs):
self.field = field
super().__init__(**kwargs)
def __get__(self, instance, owner): def __get__(self, instance, owner):
"""Descriptor to automatically dereference references.""" """Descriptor to automatically dereference references."""

View File

@ -556,10 +556,10 @@ class DateTimeField(BaseField):
if callable(value): if callable(value):
return value() return value()
if not isinstance(value, str): if isinstance(value, str):
return None
return self._parse_datetime(value) return self._parse_datetime(value)
else:
return None
@staticmethod @staticmethod
def _parse_datetime(value): def _parse_datetime(value):
@ -923,10 +923,9 @@ class ListField(ComplexBaseField):
""" """
def __init__(self, field=None, max_length=None, **kwargs): def __init__(self, field=None, max_length=None, **kwargs):
self.field = field
self.max_length = max_length self.max_length = max_length
kwargs.setdefault("default", lambda: []) kwargs.setdefault("default", lambda: [])
super().__init__(**kwargs) super().__init__(field=field, **kwargs)
def __get__(self, instance, owner): def __get__(self, instance, owner):
if instance is None: if instance is None:
@ -1008,14 +1007,9 @@ class SortedListField(ListField):
to perform a push operation. to perform a push operation.
""" """
_ordering = None
_order_reverse = False
def __init__(self, field, **kwargs): def __init__(self, field, **kwargs):
if "ordering" in kwargs.keys(): self._ordering = kwargs.pop("ordering", None)
self._ordering = kwargs.pop("ordering") self._order_reverse = kwargs.pop("reverse", False)
if "reverse" in kwargs.keys():
self._order_reverse = kwargs.pop("reverse")
super().__init__(field, **kwargs) super().__init__(field, **kwargs)
def to_mongo(self, value, use_db_field=True, fields=None): def to_mongo(self, value, use_db_field=True, fields=None):
@ -1065,11 +1059,10 @@ class DictField(ComplexBaseField):
""" """
def __init__(self, field=None, *args, **kwargs): def __init__(self, field=None, *args, **kwargs):
self.field = field
self._auto_dereference = False self._auto_dereference = False
kwargs.setdefault("default", lambda: {}) kwargs.setdefault("default", lambda: {})
super().__init__(*args, **kwargs) super().__init__(*args, field=field, **kwargs)
def validate(self, value): def validate(self, value):
"""Make sure that a list of valid fields is being used.""" """Make sure that a list of valid fields is being used."""