Я пытаюсь загрузить некоторые данные в свое хранилище данных App Engine с помощью функции массового загрузчика. Для одного из моих типов сущностей у меня есть одно свойство, которое вычисляется из другого, поэтому я действительно хотел бы выполнить некоторую постобработку для каждой сущности, поскольку она импортируется для выполнения этого вычисления. Я продолжаю видеть краткие упоминания о теге преобразования post_import_function, но никакой реальной исчерпывающей документации или примеров.
Сейчас я просто пытаюсь провести простой тест, чтобы заставить работать мою функцию post_import_.
Моя модель сущности:
class TestEntity(db.Model):
location = db.GeoPtProperty()
cells = db.StringListProperty() # Computed from location
Соответствующая часть моего файла bulkloader.yaml выглядит следующим образом:
- kind: TestEntity
[... connector info ...]
property_map:
[... transform info for __key__ and location here ...]
post_import_function: post_transform.post_process_testentity
И моя функция post_process_testentity:
def post_process_testentity(input_dict, entity_instance, bulkload_state):
entity_instance.cells = [u'Hello there!']
return entity_instance
Когда я делаю загрузку данных со всем этим, я не получаю ошибок (и я знаю, что вводится post_process_testentity, потому что я добавил несколько операторов print внутри него, которые работали правильно). Все о загрузке работает, кроме моей функции пост-обработки, абсолютно не влияет. Когда я пользуюсь средством просмотра данных, в моем хранилище данных нет "Hello there!".
Может ли кто-нибудь мне немного помочь? Спасибо!