我正在使用Django 1.10.4和Python 3.52.当我尝试通过运行Django命令时,python manage.py my_command我收到以下错误:
Traceback (most recent call last):
File "manage.py", line 22, in <module>
execute_from_command_line(sys.argv)
File "path_to_envs/envs/env_name/lib/python3.5/site-packages/django/core/management/__init__.py", line 367, in execute_from_command_line
utility.execute()
File "path_to_envs/envs/env_name/lib/python3.5/site-packages/django/core/management/__init__.py", line 359, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "path_to_envs/envs/env_name/lib/python3.5/site-packages/django/core/management/base.py", line 294, in run_from_argv
self.execute(*args, **cmd_options)
File "path_to_envs/envs/env_name/lib/python3.5/site-packages/django/core/management/base.py", line 345, in execute
output = self.handle(*args, **options)
TypeError: handle() got an unexpected keyword argument 'verbosity'
Run Code Online (Sandbox Code Playgroud)
我可以运行本地django服务器并与管理页面进行交互.包含该命令的应用程序位于我的settings.py文件中.
以下是django命令的内容:
from django.core.management import BaseCommand
from my_module import MyClass
class Command(BaseCommand):
def handle(self):
my_class = MyClass()
my_class.my_method()
Run Code Online (Sandbox Code Playgroud)
在出错时,options字典包含{'verbosity': 1, 'no_color': False, 'settings': None, 'pythonpath': None, 'traceback': False}.根据字典的随机排序no_color,traceback和其他人会抛出相同TypeError.经过一天的谷歌搜索后,我仍然无法弄清楚问题是什么.谁看过这个吗?
Ada*_*amY 16
经过大量的谷歌搜索和拔出我的头发,问题是不正确的参数数量handle().
这个:
def handle(self):
Run Code Online (Sandbox Code Playgroud)
应该:
def handle(self, *args, **options):
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1492 次 |
| 最近记录: |