Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Zapier操作代码:Python输入_数据[]从列表中去除空值_Python_Magento_Zapier - Fatal编程技术网

Zapier操作代码:Python输入_数据[]从列表中去除空值

Zapier操作代码:Python输入_数据[]从列表中去除空值,python,magento,zapier,Python,Magento,Zapier,我一直在尝试使用Python为Zapier创建自定义代码 代码从Magento 2发票中提取两个列表。它们是行项目的详细信息,我们使用这些数据更新库存系统中的库存。不幸的是,捆绑产品显示的是子产品,我需要将子产品的数量归零,这样子产品就不会从库存中取出 如果父项是“bundle”,我将逻辑全部排序,以将库存项目数量设置为零 问题在于提取输入数据。正在删除空值 例如,如果列表为null,null,null,bundle,那么结果就是bundle 如果列表为1,1,1,则null,我最后得到的结果是

我一直在尝试使用Python为Zapier创建自定义代码

代码从Magento 2发票中提取两个列表。它们是行项目的详细信息,我们使用这些数据更新库存系统中的库存。不幸的是,捆绑产品显示的是子产品,我需要将子产品的数量归零,这样子产品就不会从库存中取出

如果父项是“bundle”,我将逻辑全部排序,以将库存项目数量设置为零

问题在于提取输入数据。正在删除空值

例如,如果列表为null,null,null,bundle,那么结果就是bundle 如果列表为1,1,1,则null,我最后得到的结果是1,1,1

是否有任何方法可以在不删除空值的情况下从输入数据字段中提取数据

代码目前看起来是这样的

# if the product is a child of a bundle then zero out the quantity or it will take extra stock

quantity = str(input_data["item_qty_invoiced"])
quantity_array = quantity.split(",")

cleaned_quantity_list = ""

product_type = str(input_data["item_product_type"])
product_type_array = product_type.split(",")

num_of_line_items = len(product_type_array)
index = 0

while index < num_of_line_items:

    if product_type_array[index] == "bundle":
        quantity_array[index] = 0

    index += 1

cleaned_quantity_list = ",".join(str(i) for i in quantity_array)    

return {'item_qty_invoiced': cleaned_quantity_list}
#如果产品是捆绑产品的子产品,则将数量归零,否则将需要额外库存
数量=str(输入数据[“项目数量发票”])
数量\数组=数量。拆分(“,”)
清洁数量清单=“”
产品类型=str(输入数据[“项目产品类型”])
产品类型数组=产品类型拆分(“,”)
行项目的数量=len(产品类型数组)
索引=0
当索引<行项目的数量时:
如果产品类型数组[索引]=“捆绑”:
数量\数组[索引]=0
指数+=1
已清理的数量列表=“,”。连接(数量数组中的str(i)表示i)
返回{'item\u quantity\u invocated':已清理的\u quantity\u list}
我还没有尝试过javascript,但如果它是一个选项,我很高兴看到它

根据Zapier开发人员2019年3月的一份报告,将输入强制转换为字符串的方式是固定的,并且没有解决此问题的计划

一个是:

最好的做法是制作一个复制twitter操作的小CLI应用程序。然后您可以将输出设置为一个json字符串,我们不会碰它。我在几个地方都做过,效果很好(除了我们需要为您处理twitter时必须自己与twitter交互的额外负担)

但是,这确实破坏了使用Zapier的一半目的。

根据Zapier开发人员2019年3月的一份报告,将输入强制转换为字符串的方式是固定的,并且没有解决此问题的计划

一个是:

最好的做法是制作一个复制twitter操作的小CLI应用程序。然后您可以将输出设置为一个json字符串,我们不会碰它。我在几个地方都做过,效果很好(除了我们需要为您处理twitter时必须自己与twitter交互的额外负担)


不过,这确实破坏了使用Zapier的一半目的。

我也有这个问题。我有一个包含关键字X的输入,我想要它的值。我事先不知道确切的键,但我希望能够遍历所有键,找到哪个键包含关键字X,并访问相关值。现在,我不能可靠地做到这一点,因为空值会被删除。我也有这个问题。我有一个包含关键字X的输入,我想要它的值。我事先不知道确切的键,但我希望能够遍历所有键,找到哪个键包含关键字X,并访问相关值。现在,我不能可靠地做到这一点,因为空值会被删除。解释如何使用Zapier more设置web钩子,并声称您希望使用Python访问JSON。这里要求不要删除空值,这引起了Zapier开发人员的注意,但似乎没有取得任何进展。解释如何使用Zapier more设置web钩子,并声称您希望使用Python访问JSON。这里要求不要删除空值,这引起了Zapier开发人员的注意,但似乎没有取得任何进展。