Merge pull request #2824 from strikaco/attrprop

AttributeProperty tries spawning child instances of default value (#2697)
This commit is contained in:
Griatch 2022-08-14 16:45:46 +02:00 committed by GitHub
commit f695e624e2

View file

@ -203,6 +203,21 @@ class AttributeProperty:
self._autocreate = autocreate self._autocreate = autocreate
self._key = "" self._key = ""
@property
def _default(self):
"""
Tries returning a new instance of default if callable.
"""
if callable(self.__default):
return self.__default()
return self.__default
@_default.setter
def _default(self, value):
self.__default = value
def __set_name__(self, cls, name): def __set_name__(self, cls, name):
""" """
Called when descriptor is first assigned to the class. It is called with Called when descriptor is first assigned to the class. It is called with