我已经按照本文档中的建议设置了我的app.yaml和data_uploader文件。我的CSV文件有一些空值(我导出的电子表格有一些空单元格)。
当我运行这个脚本时,我在日志文件中得到了这个错误: WorkerThread-0: Value中的错误不应该是空的;接收到的[]。
我的猜测是,因为某些值在csv文件中是空的,我如何确保将空值作为“”导入数据存储,或者根本不导入(模型属性都是可选的)。
谢谢大卫。
发布于 2010-11-03 10:41:25
您可能应该自定义您的bulkloader.yaml,在属性映射部分给出正确的指令。
检查是否设置了给出问题的模型类属性上的import_transform元素,并尝试使用none_if_empty指令。
- property: fooproperty
external_name: fooproperty
import_transform: transform.none_if_empty(foopropertytype)这就是空的所做的:
def none_if_empty(fn):
"""A wrapper for a value to return None if it's empty. Useful on import.
Can be used in config files (e.g. "transform.none_if_empty(int)" or
as a decorator.
Args:
fn: Single argument transform function.
Returns:
Wrapped function.
"""
def wrapper(value):
if value == '' or value is None:
return None
return fn(value)
return wrapperAfaik,批量加载器生成使用生产数据存储统计数据推断正确配置的bulkloader.yaml文件;只需检查所做的假设是否正确。
https://stackoverflow.com/questions/3908524
复制相似问题