据我所知,为 bulkloader.yaml 文件中的属性分配默认值并不容易。我了解到设置默认值的一种方法是编写自己的函数:
- property: status
external_name: status
import_transform: extrabulkloadfunctions.staticvalue(int)
所以我修改了 transform.none_if_empty(int) 函数,使它返回字符串'in queue'而不是None。
def staticvalue(fn):
def wrapper(value):
if value == '' or value is None:
return 'in queue'
return fn(value)
return wrapper
不过我想知道,由于 input_transform 只接受一个函数,是否可以传入一个默认值,这样我就不必为我想要传入的每种默认值编写一个新函数。IE:
import_transform: extrabulkloadfunctions.staticvalue("default A")
import_transform: extrabulkloadfunctions.staticvalue("default B")
等等
谢谢!