如果使用cookiecutter的语句语法错误

时间:2019-04-24 10:00:18

标签: django cookiecutter-django cookiecutter

我试图在我的Django项目中第一次使用cookiecutter来创建项目框架。

在我的cookiecutter.project_slug中,我有一个 base.py 设置文件,该文件的末尾是该部分:

import cookiecutter

{% if cookiecutter.use_celery == 'y' %}
CELERY_BROKER_URL = 'redis://localhost:6379'
CELERY_ACCEPT_CONTENT = ['application/json']
CELERY_RESULT_BACKEND = 'redis://localhost:6379'
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'
CELERY_IGNORE_RESULT = False
CELERY_TASK_TRACK_STARTED = True
# Add a one-minute timeout to all Celery tasks.
CELERYD_TASK_SOFT_TIME_LIMIT = 60
{% endif %}

但是看来Django不喜欢这部分的语法:invalid syntax error

您知道我如何为上面的这一部分编写好的语法吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

好像您克隆了cookiecutter-django并试图运行一些特定于Django的命令,例如pip install -r requirements/local.txtpython manage.py runserver 0.0.0.0:8000?这行不通,让我解释一下原因。

Cookiecutter-django基于cookiecutter,这是一个用于创建项目模板的命令行实用程序。换句话说,您可以<< strong>借助cookiecutter-django 生成Django入门项目。

请按照here的说明运行以下命令,而不是克隆cookiecutter-django。

$ pip install "cookiecutter>=1.4.0"
$ cookiecutter https://github.com/pydanny/cookiecutter-django

现在,您将被cookiecutter-django询问一些问题。例如,如果您不想使用芹菜。另请参见options page。根据您选择的选项,cookiecutter-django将为您设置项目。

完成所有步骤后,您可以运行Django特定的命令-请参见herehere if you did choose Docker