0
私は、トランザクションを含むdjangoビューをテストしようとしています。特に、私は使用するdbをtransaction.atomic(using=myDb)
で指定します。しかし、私は私のテストを実行するとdjango.db.utils.ConnectionDoesNotExist: The connection myDb doesn't exist
を取得します。transaction.atomic(using = myDb)を持つDjangoビューをテストするには?
私はテストでmyDbをヒットしていないので、ビューをテストする方法はありますか?ご協力いただきありがとうございます!
Trackeback:
Traceback (most recent call last):
File "C:\Python34\lib\site-packages\django\db\utils.py", line 176, in ensure_defaults
conn = self.databases[alias]
KeyError: 'myDb'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "Z:\web-django-2\web-django\src\revisorsite\track\tests.py", line 92, in test_redirect_on_edit
response = Add.as_view()(request)
File "C:\Python34\lib\site-packages\django\views\generic\base.py", line 68, in view
return self.dispatch(request, *args, **kwargs)
File "C:\Python34\lib\site-packages\django\utils\decorators.py", line 67, in _wrapper
return bound_func(*args, **kwargs)
File "Z:\web-django-2\web-django\src\revisorsite\login\decorators.py", line 8, in wrap
return function(request, *args, **kwargs)
File "C:\Python34\lib\site-packages\django\utils\decorators.py", line 63, in bound_func
return func.__get__(self, type(self))(*args2, **kwargs2)
File "C:\Python34\lib\site-packages\django\views\generic\base.py", line 88, in dispatch
return handler(request, *args, **kwargs)
File "Z:\web-django-2\web-django\src\revisorsite\track\views.py", line 47, in post
transaction.set_autocommit(False, using='myDb')
File "C:\Python34\lib\site-packages\django\db\transaction.py", line 35, in set_autocommit
return get_connection(using).set_autocommit(autocommit)
File "C:\Python34\lib\site-packages\django\db\transaction.py", line 21, in get_connection
return connections[using]
File "C:\Python34\lib\site-packages\django\db\utils.py", line 208, in __getitem__
self.ensure_defaults(alias)
File "C:\Python34\lib\site-packages\django\db\utils.py", line 178, in ensure_defaults
raise ConnectionDoesNotExist("The connection %s doesn't exist" % alias)
django.db.utils.ConnectionDoesNotExist: The connection myDb doesn't exist
「myDb」とは何ですか?その名前のデータベースがセットアップされていますか? – knbk
はい、私は自分のプロジェクトに複数のデータベースを持っていますが、私はこのアプリケーションで使用するためにそれらの1つを指定しています。 –
トレースバックを表示できますか? – knbk