我一直在寻找这方面的指导方针,但没有成功。在我使用的项目中 Django data migrations经常。它们看起来或多或少像文档中的示例。然而,操作有时相当复杂,最好有一些控制台输出总结执行的操作(即删除/创建/重新连接/等的内容以及原因)。
所以问题是:将这种登录编码到迁移中是否可以?如果是这样,是使用 Python 的 logging
模块还是只使用 print
更好?在前一种情况下,可能需要额外的配置才能使这些日志可见(在 settings.py
中?)。在后一种情况下,首选 stderr
还是 stdout
?
这个问题可以扩展到是否允许来自用户的交互式输入。内置的模式迁移工具很容易提出与数据相关的交互式问题。
Custom management commands推荐了提供控制台输出的方法,这是这个问题背后的部分动机。
最佳答案
我认为日志是实现此目的的方式。由于您要在服务器上运行迁移,因此最好将其保存到日志中,以便以后可以随时捕获它。
关于python - 在 Django 数据迁移中打印到 stdout 或 stderr 是否可以?如果是这样,如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37054682/