当我执行python manage.py migrate
时,我得到以下TypeError:
TypeError: Unknown option(s) for sync_cassandra command: app_label, fake, fake_initial, interactive, migration_name, run_syncdb. Valid options are: database, help, no_color, pythonpath, settings, skip_checks, stderr, stdout, traceback, verbosity, version.
我正在使用Cassandra 3.11.2,Python 3.5.2和django 2.0.7。全部在Ubuntu Server 16.04中运行
编辑以添加settings.py
我认为设置文件中的一切都很好......我试图重新安装cassandra,cassandra引擎并不起作用。
谢谢!
你需要发布你的python代码,否则很难说肯定。
可能是你错过了相关模块import
:https://www.pydoc.io/pypi/django-cassandra-engine-1.1.0/autoapi/management/commands/sync_cassandra/index.html
你可以看看这里,我想你会发现这很有用:https://github.com/r4fek/django-cassandra-engine/blob/master/django_cassandra_engine/management/commands/sync_cassandra.py
这看起来类似于这里发布的问题:Django migration raised TypeError: Unknown option(s) for sync_cassandra command
我相信这是a change in Django as of version 2.0的结果,其中更新了call_command()
函数以验证传递给它的选项。如果无法验证该选项(即,没有出现在您正在绘制的任何模块的代码中),那么您将获得此TypeError。
在代码库中搜索使用您收到的TypeError消息中列出的任何未知选项的call_command()
实例。根据其目的,您可以考虑两种选择:
call_command()
中删除未知选项parser.add_argument()
的文件中添加适当的call_command()
函数。显示here的Django文档示例。