Home > Backend Development > Python Tutorial > Detailed tutorial on using cookiecutter in Django

Detailed tutorial on using cookiecutter in Django

coldplay.xixi
Release: 2020-12-03 17:10:53
forward
4483 people have browsed it

python video tutorialThe column introduces how to use cookiecutter

Detailed tutorial on using cookiecutter in Django

##Related free learning recommendations:

python video tutorial

1. Installation


Import:

pipenv install cookiecutter

Problem: An error may be reported during the import process:


pkg_resources.VersionConflict: (importlib-metadata 3.1.0 (/Users/apple/.local/share/virtualenvs/testProject-h0hp04R9/lib/python3.6/site-packages), Requirement.parse('importlib-metadata<2,>=0.12; python_version < "3.8"')).


Cause and solution: This problem occurs mainly because the pipenv version is not supported. Pipenv needs to be updated. Use the command: pip3 install -U pipenv, and then re-import it.

2. Create a project


Run cookiecutter

Problem: Report an error directly

zsh: command not found: cookiecutter

Solution: Use pipenv --py to obtain the installation directory of the python environment, and run cookiecutter

in this directory. The error will continue to be reported after running: Template

Usage: cookiecutter [OPTIONS] TEMPLATE [EXTRA_CONTEXT]...
Try &#39;cookiecutter -h&#39; for help.
Error: Missing argument &#39;TEMPLATE&#39;.
Copy after login

is missing. Find pydanny/cookiecutter in github- Django, assign the github address, write the address after the python operating environment, run again

/Users/apple/.local/sha~~~~re/virtualenvs/testProject-h0hp04R9/bin/cookiecutter https://github.com/pydanny/cookiecutter-django.git
Copy after login

Successfully enter the configuration options, and perform specific configuration

3. Specific configuration


    project_name: project name
  • project_slug: the default is the same as the name of the project, no need to fill in
  • description: a brief description of the project
  • author_name: author's Name, format name
  • domain_name: Website domain name
  • eamil: Email
  • version [0.1.0] Select open_source_license: Select whether to open source type
  • timezone: Time zone setting, Asia/Shanghai
  • windows: whether to use windows system development
  • use_pycharm: whether to use pycharm
  • use_docker: whether to use docker
  • Select postgresql_version: Select the version of postgresql, the default is the latest version, and Mysql is not inherited by default~~~~
  • Select js_task_runner: js runner, use the default
  • Select cloud_provider: Default
  • Select mail_service: Select the email service
  • use_async: whether to use asynchronous programming
  • use_drf: whether to use django rest_framework, if the front and back ends are separated, select y
  • custom_bootstrap_compilation: Whether to customize bootstrap compression
  • use_compressor: technology used to compress js and css, you need to select y
  • use_celery: whether to use celery, use select y
  • use_mailhog: third party Email sending service
  • use_sentry: whether to use error log monitoring
  • use_whitenoise: used to deploy static files, with file compression function
  • use_heroku: a famous foreign pass platform , if you want to deploy it above, select y and the corresponding configuration will be automatically generated
  • Select ci_tool: Select tool (None/Travis/Gitlab/Github)
  • keep_local_envs_in_vcs: Whether to use it in local environment variables Version configuration, select y
  • debug: whether to use debug, select y

4. Question:


project is undergoing data migration An error may be reported:

 File "/Users/apple/.local/share/virtualenvs/django-pro-7n8-wfJY/lib/python3.6/site-packages/django_celery_beat/models.py", line 60, in crontab_schedule_celery_timezone
 choice[0].zone for choice in timezone_field.TimeZoneField.CHOICES
AttributeError: type object &#39;TimeZoneField&#39; has no attribute &#39;CHOICES&#39;
Copy after login

Cause: django-celery-beat setup.py has a https://github.com/celery/django-celery-beat/blob/master/requirements/default.txt dependency According to the requirement, django-timezone-field can only be used with >=4.0 and Solution: pipenv install django-timezone-field==4.0, just re-execute the data migration

Summary

This concludes this tutorial on the use of cookiecutter in django This concludes the article.

If you want to know more about programming learning, please pay attention to the

php training column!

The above is the detailed content of Detailed tutorial on using cookiecutter in Django. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:jb51.net
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template