Python 使用bulkloader下载应用程序引擎数据时,如何从ReferenceProperty类获取属性?

Python 使用bulkloader下载应用程序引擎数据时,如何从ReferenceProperty类获取属性?,python,google-app-engine,bulkloader,Python,Google App Engine,Bulkloader,我想下载我的应用程序引擎数据,以便在本地高效地操作它(我正在基于它生成一些PDF)。如何定义ReferenceProperty的列由引用模型的特定属性填充,而不仅仅是键或id 以下是我的模型课程: class Department(db.Model): name = db.StringProperty() class User(db.Model): userKey = db.StringProperty(required=True) secret = db.StringPro

我想下载我的应用程序引擎数据,以便在本地高效地操作它(我正在基于它生成一些PDF)。如何定义ReferenceProperty的列由引用模型的特定属性填充,而不仅仅是键或id

以下是我的模型课程:

class Department(db.Model): name = db.StringProperty() class User(db.Model): userKey = db.StringProperty(required=True) secret = db.StringProperty() dept = db.ReferenceProperty(Department, required=True) 班级部门(db.Model): name=db.StringProperty() 类用户(db.Model): userKey=db.StringProperty(必需=True) secret=db.StringProperty() dept=db.ReferenceProperty(Department,required=True) 然而,尽管我在bulkloader.yaml中描述了一个属性映射,如下所示:

- kind: User connector: csv connector_options: property_map: - property: __key__ external_name: key export_transform: transform.key_id_or_name_as_string - property: dept external_name: dept import_transform: transform.create_foreign_key('Department') export_transform: transform.key_id_or_name_as_string - property: secret external_name: secret - property: userKey external_name: userKey -种类:用户 连接器:csv 连接器\u选项: 酒店地图: -属性:_键__ 外部名称:key 导出\u转换:transform.key\u id\u或\u name\u作为\u字符串 -物业:运输署 外部名称:部门 导入\u转换:转换。创建\u外键(“部门”) 导出\u转换:transform.key\u id\u或\u name\u作为\u字符串 -财产:秘密 外部名称:机密 -属性:userKey 外部名称:userKey 我总是在CSV中输入部门密钥

e、 g

部门密钥 1184017 mySecret myKey 如何定义dept列由depart模型的'name'属性填充

e、 g

部门密钥 我的部门我的秘密我的钥匙 谢谢,
paul

创建一个文件uploadutil.py并在其中添加此方法:

def prop_converter(dept):
  # load the department then return the property you want
  return dept.name
然后将其添加到bulkloader.yaml中:

为uploadutil添加导入:

import: uploadutil
并添加属性:

- property: dept
    external_name: dept
    import_transform: transform.create_foreign_key('Department')
    export_transform: uploadutil.prop_converter

因此,在导出时调用上述方法

创建文件uploadutil.py并在其中添加此方法:

def prop_converter(dept):
  # load the department then return the property you want
  return dept.name
然后将其添加到bulkloader.yaml中:

为uploadutil添加导入:

import: uploadutil
并添加属性:

- property: dept
    external_name: dept
    import_transform: transform.create_foreign_key('Department')
    export_transform: uploadutil.prop_converter
因此,在导出时调用上述方法