我想在 django 中进行转储,而不管我使用的是什么数据库,以后可以加载。命令“dumpdata”非常适合此操作,但它会在控制台上打印输出。此外,我使用 call_command 函数调用它,因此我无法将其内容存储在任何变量中,因为它正在控制台上打印输出。
请让我知道如何使用 dumpdata 或任何其他命令或 api 将转储存储到文件中。
谢谢
原文由 Paritosh Singh 发布,翻译遵循 CC BY-SA 4.0 许可协议
我想在 django 中进行转储,而不管我使用的是什么数据库,以后可以加载。命令“dumpdata”非常适合此操作,但它会在控制台上打印输出。此外,我使用 call_command 函数调用它,因此我无法将其内容存储在任何变量中,因为它正在控制台上打印输出。
请让我知道如何使用 dumpdata 或任何其他命令或 api 将转储存储到文件中。
谢谢
原文由 Paritosh Singh 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答5k 阅读✓ 已解决
2 回答1k 阅读✓ 已解决
4 回答935 阅读✓ 已解决
3 回答1.1k 阅读✓ 已解决
3 回答1.1k 阅读✓ 已解决
1 回答1.7k 阅读✓ 已解决
1 回答1.2k 阅读✓ 已解决
如果您使用
call_command
在 Python 中调用它,您 可以 选择一个文件将 dumpdata 的输出放入其中,例如:但是,如果您尝试在 dumpdata 命令末尾使用例如
--stdout=filename.json
从命令行调用它,它会给出错误manage.py: error: no such option: --stdout
。它就在那里,您只需在 Python 脚本中而不是在命令行中调用它。如果你想把它作为命令行选项,那么重定向(正如其他人所建议的那样)是你最好的选择。