使用临时数据库启动django shell
我想用一个临时数据库启动django shell(就像做django测试时所做的那样) 是否有类似以下命令:使用临时数据库启动django shell,django,django-tests,Django,Django Tests,我想用一个临时数据库启动django shell(就像做django测试时所做的那样) 是否有类似以下命令: python manage.py testshell 在哪里我可以创建一堆伪造的模型而不污染我的数据库?不用担心,这就解释了 >>> from django import test >>> test.utils.setup_test_environment() # Setup the environment >>> from dja
python manage.py testshell
在哪里我可以创建一堆伪造的模型而不污染我的数据库?不用担心,这就解释了
>>> from django import test
>>> test.utils.setup_test_environment() # Setup the environment
>>> from django.db import connection
>>> db = connection.creation.create_test_db() # Create the test db
您只需关闭自动提交:
from django.db import transaction
transaction.set_autocommit(False)
IIRC,单元测试框架为您创建测试数据库。您只需确保它具有正确的权限即可。即使您自己回答了,也要将此答案标记为正确,这样就不会显示为未回答的问题。@MikeDeSimone我还有两天时间可以回答,但我会的。啊,忘了延迟了。博客链接无效,但是我认为这些命令对于测试shell来说已经足够了。可能这两个命令
connection.creation.destroy\u test\u db()
和test.utils.tear\u-down\u-test\u-environment()
也很有用。如果要连接到现有数据库并且使用Django>=1.8,请使用db=connection.creation.create\u-test\u-db(keepdb=True)
。文档是。