Python Django newbie错误:NotImplementedError:BaseDatabaseClient的子类必须提供runshell()方法
我是django&co世界的新手。。。最近几天,它在dbshell中工作,但我不知道我碰了什么,因为它正在产生崩溃。。。如果有任何线索,我将不胜感激。附加错误。 我试图用django制作一个RESTAPI,mongodb由djongo连接Python Django newbie错误:NotImplementedError:BaseDatabaseClient的子类必须提供runshell()方法,python,django,mongodb,djongo,Python,Django,Mongodb,Djongo,我是django&co世界的新手。。。最近几天,它在dbshell中工作,但我不知道我碰了什么,因为它正在产生崩溃。。。如果有任何线索,我将不胜感激。附加错误。 我试图用django制作一个RESTAPI,mongodb由djongo连接 (DjangoProject) C:\Users\Skootik\alchemyml_services>python manage.py dbshell Traceback (most recent call last): File "manage.
(DjangoProject) C:\Users\Skootik\alchemyml_services>python manage.py dbshell
Traceback (most recent call last):
File "manage.py", line 15, in <module>
execute_from_command_line(sys.argv)
File "C:\Users\Skootik\Anaconda3\envs\DjangoProject\lib\site-packages\django\core\management\__init__.py", line 381, in execute_from_command_line
utility.execute()
File "C:\Users\Skootik\Anaconda3\envs\DjangoProject\lib\site-packages\django\core\management\__init__.py", line 375, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "C:\Users\Skootik\Anaconda3\envs\DjangoProject\lib\site-packages\django\core\management\base.py", line 316, in run_from_argv
self.execute(*args, **cmd_options)
File "C:\Users\Skootik\Anaconda3\envs\DjangoProject\lib\site-packages\django\core\management\base.py", line 353, in execute
output = self.handle(*args, **options)
File "C:\Users\Skootik\Anaconda3\envs\DjangoProject\lib\site-packages\django\core\management\commands\dbshell.py", line 22, in handle
connection.client.runshell()
File "C:\Users\Skootik\Anaconda3\envs\DjangoProject\lib\site-packages\django\db\backends\base\client.py", line 12, in runshell
raise NotImplementedError('subclasses of BaseDatabaseClient must provide a runshell() method')
NotImplementedError: subclasses of BaseDatabaseClient must provide a runshell() method
(DjangoProject)C:\Users\Skootik\alchemyml\u services>python manage.py dbshell
回溯(最近一次呼叫最后一次):
文件“manage.py”,第15行,在
从命令行(sys.argv)执行命令
文件“C:\Users\Skootik\Anaconda3\envs\DjangoProject\lib\site packages\django\core\management\\uuuuuuu init\uuuuuuu.py”,第381行,从命令行执行
utility.execute()
文件“C:\Users\Skootik\Anaconda3\envs\DjangoProject\lib\site packages\django\core\management\\uuuu init\uuuuu.py”,第375行,执行
self.fetch_命令(子命令)。从_argv(self.argv)运行_
文件“C:\Users\Skootik\Anaconda3\envs\DjangoProject\lib\site packages\django\core\management\base.py”,第316行,运行于\u argv
self.execute(*args,**cmd_选项)
文件“C:\Users\Skootik\Anaconda3\envs\DjangoProject\lib\site packages\django\core\management\base.py”,执行中第353行
输出=self.handle(*args,**选项)
文件“C:\Users\Skootik\Anaconda3\envs\DjangoProject\lib\site packages\django\core\management\commands\dbshell.py”,第22行,位于句柄中
connection.client.runshell()
文件“C:\Users\Skootik\Anaconda3\envs\DjangoProject\lib\site packages\django\db\backends\base\client.py”,第12行,在runshell中
raise NOTEImplementedError('BaseDatabaseClient的子类必须提供runshell()方法')
NotImplementedError:BaseDatabaseClient的子类必须提供runshell()方法
您是否在Django项目设置中配置了数据库引擎?谢谢你的回复。我按照Djongo指定的方式做了():DATABASES={'default':{'ENGINE':'Djongo','NAME':'dbAmlApi',}},它工作了。。。但肯定的是,我做的smth把事情搞砸了。好吧,在我工作的时候,我会给出更多的细节。。。我重写了User类(需要email是唯一的,还添加了一些字段)。在设置中添加了AUTH\u USER\u MODEL='services.USER'
。我还尝试添加到Django管理员:Admin.site.register(settings.AUTH\u USER\u MODEL,CustomUserAdmin)
。。。我错过了smth,我不知道。。。感谢advanceDid,您在Django项目设置中配置了数据库引擎了吗?谢谢你的回复。我按照Djongo指定的方式做了():DATABASES={'default':{'ENGINE':'Djongo','NAME':'dbAmlApi',}},它工作了。。。但肯定的是,我做的smth把事情搞砸了。好吧,在我工作的时候,我会给出更多的细节。。。我重写了User类(需要email是唯一的,还添加了一些字段)。在设置中添加了AUTH\u USER\u MODEL='services.USER'
。我还尝试添加到Django管理员:Admin.site.register(settings.AUTH\u USER\u MODEL,CustomUserAdmin)
。。。我错过了smth,我不知道。。。提前谢谢