有没有办法使用 Python3 (WITHOUT Dataflow) 从 Datastore 命名空间中删除所有实体?

泰勒

需要在测试期间上传测试数据之前擦除 Datastore 命名空间。将 Cloud Datastore API 与 Python3 结合使用。

我在 Python3 中将 Datastore 与 App Engine 一起使用。出于测试目的,我使用 Cloud Datastore API 编写了一个脚本,将多个不同类型的实体上传到数据存储区。由于这是一个小项目,目前只有4种,每种只有2-3个实体。

我想将一个脚本添加到我的管道中,以清除 Datastore 中将包含我的测试数据的特定命名空间。我希望它在上传数据和测试之前运行,以便测试每次都可以从头开始。我正在使用云构建器将实体上传到数据存储并在部署到应用程序引擎之前在 docker 容器中运行我的测试。

目前我能找到的唯一解决方案是使用 Dataflow(我认为这完全是矫枉过正),或者使用它的键单独删除每个实体。如果可能,我更愿意擦除整个命名空间。

如果有人对如何执行此操作有任何建议或建议,请告诉我!

skaul05

您可以在 python 中编写一个脚本来删除特定命名空间中的所有种类。假设您事先知道种类的名称。

from google.appengine.ext import ndb
from google.appengine.api import namespace_manager

namespace = "PROVIDE_NAMESPACE_HERE"
kind_list = [kind_1,kind_2,kind_3,kind_4]

namespace_manager.set_namespace(namespace) # will set to the namespace provided

for a_kind in kind_list:
    # will fetch keys of all objects in that kind
    kind_keys = a_kind.gql("").fetch(keys_only = True) 
    # will delete all the keys at once
    ndb.delete_multi(kind_keys) 

从特定命名空间中删除所有种类后,您的命名空间将在 Cloud Datastore 中可见约 24 小时,如果之后它不包含任何种类,它将被自动删除。

希望这能回答你的问题!!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

有没有办法将python3中的reportlib中的PDF文件合并?

来自分类Dev

Python3:有没有办法像python2一样使用telnetlib,而没有ascii编码和b前缀?

来自分类Dev

有没有办法获得“可变”分数?- Python

来自分类Dev

有没有办法备份Python模块?

来自分类Dev

有没有办法在Python中包含±(正负)?

来自分类Dev

有没有办法动态导入Python对象?

来自分类Dev

有没有办法镜像python函数?

来自分类Dev

有没有办法在python中禁止舍入?

来自分类Dev

有没有办法用 Python 修改 JSON?

来自分类Dev

有没有办法使用 Python 使用 open 反向读取文件

来自分类Dev

有没有办法删除Sublime Text 3中的所有注释行?

来自分类Dev

有没有办法在jquery 3.x中使用bootstrap

来自分类Dev

有没有办法在最新的Swift 3快照中使用C可变参数函数?

来自分类Dev

有没有办法在最新的Swift 3快照中使用C可变参数函数?

来自分类Dev

有没有办法在python中的子句中使用bincount?

来自分类Dev

有没有办法在python中使用bin宽度= 0.1的bincount?

来自分类Dev

有没有办法在python中使用点运算符传递参数?

来自分类Dev

有没有办法在Cygwin上使用Python 3.5?

来自分类Dev

有没有办法使用python列出json中未知数量的元素?

来自分类Dev

有没有办法在Windows中使用python设置文件的详细信息?

来自分类Dev

有没有办法知道使用python的chromedrive产生了什么chrome进程?

来自分类Dev

有没有办法在Python3.8中使用rgb颜色?

来自分类Dev

有没有办法在Python的PySimpleGUI中使用其键获取输入?

来自分类Dev

有没有办法使用Soundcloud Python在轨道上发表评论?

来自分类Dev

有没有办法在列表对象上使用strip()?- Python

来自分类Dev

Python - 有没有办法使用枚举来获取(str,index)而不是(index,str)?

来自分类Dev

有没有办法使用 Python 发现用户的 Windows 桌面路径?

来自分类Dev

有没有办法使用 Python API for Trello 邀请成员加入董事会?

来自分类Dev

有没有办法组合使用python迭代多行的2个txt文件的内容?

Related 相关文章

  1. 1

    有没有办法将python3中的reportlib中的PDF文件合并?

  2. 2

    Python3:有没有办法像python2一样使用telnetlib,而没有ascii编码和b前缀?

  3. 3

    有没有办法获得“可变”分数?- Python

  4. 4

    有没有办法备份Python模块?

  5. 5

    有没有办法在Python中包含±(正负)?

  6. 6

    有没有办法动态导入Python对象?

  7. 7

    有没有办法镜像python函数?

  8. 8

    有没有办法在python中禁止舍入?

  9. 9

    有没有办法用 Python 修改 JSON?

  10. 10

    有没有办法使用 Python 使用 open 反向读取文件

  11. 11

    有没有办法删除Sublime Text 3中的所有注释行?

  12. 12

    有没有办法在jquery 3.x中使用bootstrap

  13. 13

    有没有办法在最新的Swift 3快照中使用C可变参数函数?

  14. 14

    有没有办法在最新的Swift 3快照中使用C可变参数函数?

  15. 15

    有没有办法在python中的子句中使用bincount?

  16. 16

    有没有办法在python中使用bin宽度= 0.1的bincount?

  17. 17

    有没有办法在python中使用点运算符传递参数?

  18. 18

    有没有办法在Cygwin上使用Python 3.5?

  19. 19

    有没有办法使用python列出json中未知数量的元素?

  20. 20

    有没有办法在Windows中使用python设置文件的详细信息?

  21. 21

    有没有办法知道使用python的chromedrive产生了什么chrome进程?

  22. 22

    有没有办法在Python3.8中使用rgb颜色?

  23. 23

    有没有办法在Python的PySimpleGUI中使用其键获取输入?

  24. 24

    有没有办法使用Soundcloud Python在轨道上发表评论?

  25. 25

    有没有办法在列表对象上使用strip()?- Python

  26. 26

    Python - 有没有办法使用枚举来获取(str,index)而不是(index,str)?

  27. 27

    有没有办法使用 Python 发现用户的 Windows 桌面路径?

  28. 28

    有没有办法使用 Python API for Trello 邀请成员加入董事会?

  29. 29

    有没有办法组合使用python迭代多行的2个txt文件的内容?

热门标签

归档