我尝试将ndb属性子类化为以下示例
class FileStorageProperty(ndb.StringProperty):
def __init__(self, **kwds):
super(FileStorageProperty, self).__init__(**kwds)
def _to_base_type(self, value):
# Do somethings to get field name and model name
return None
def _from_base_type(self, value):
return None
所以使用FileStorageProperty的方法就像
之类的东西class A(ndb.Model):
file = FileStorageProperty()
我想做的是,在FileStorageProperty类中,例如。 init,_to_base_type,_ from_base_type我想知道型号名称('A')和字段名称('file')。
感谢您的任何建议。
答案 0 :(得分:0)
执行此操作的唯一方法是将信息作为参数传递。您可能必须将类的名称和字段的名称作为字符串传递,因为我怀疑在创建字段时该类不存在。
class FileStorageProperty(ndb.StringProperty):
def __init__(self, model, field, **kwds):
self._model = model
self._field = field
super(FileStorageProperty, self).__init__(**kwds)
class A(ndb.Model):
file = FileStorageProperty("A", "file")