django中cookiecutter的使用教程

一、安装

导入:pipenv install cookiecutter

问题:在导入的过程中可能会报错:

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"'))。

原因及解决:这个问题的出现主要是pipenv版本不支持,需要更新pipenv,使用命令:pip3 install -U pipenv,然后重新导入即可。

二、创建项目

运行cookiecutter

问题:直接报错zsh: command not found: cookiecutter

解决办法:使用pipenv --py获取python环境的安装目录,在该目录下运行cookiecutter

运行之后会继续报错:缺少Template

Usage: cookiecutter [OPTIONS] TEMPLATE [EXTRA_CONTEXT]...
Try 'cookiecutter -h' for help.
Error: Missing argument 'TEMPLATE'.

在github中找到pydanny/cookiecutter-django,赋值github地址,把地址写在python运行环境的后边,再次运行

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

成功进入配置选项,进行具体的配置

三、具体配置

  • project_name:项目名字
  • project_slug:默认和项目的名字保持一直,不必填写
  • description:项目的简单描述
  • author_name:作者的名称,格式 名字
  • domain_name:网站域名
  • eamil:邮箱
  • version [0.1.0] Select open_source_license: 选择是否开源类型
  • timezone:时区设置,Asia/Shanghai
  • windows:是否使用的是windows系统开发
  • use_pycharm:是否使用pycharm
  • use_docker:是否使用docker
  • Select postgresql_version:选择postgresql的版本,默认为最新版,并且默认没有继承Mysql~~~~
  • Select js_task_runner:js的运行器,使用默认的
  • Select cloud_provider:默认
  • Select mail_service:选择email的服务
  • use_async:是否使用异步编程
  • use_drf:是否使用django rest_framework,前后端分离的话选择y
  • custom_bootstrap_compilation:是否自定义bootstrap压缩
  • use_compressor:用于压缩js、css的技术,需要选择y
  • use_celery:是否使用celery,使用选择y
  • use_mailhog:第三方的邮件发送服务
  • use_sentry:是否使用错误日志监控
  • use_whitenoise:用于部署静态文件的,带有文件压缩功能
  • use_heroku:国外有名的pass平台,如果要部署到上边的话选择y会自动生成对应的配置
  • Select ci_tool:选择工具(None/Travis/Gitlab/Github)
  • keep_local_envs_in_vcs:是否在本地环境变量中使用版本配置,选择y
  • debug:是否使用debug,选择y

四、问题:

项目在进行数据迁移的时候可能会报错:

 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 'TimeZoneField' has no attribute 'CHOICES'

原因:django-celery-beat setup.py有一个https://github.com/celery/django-celery-beat/blob/master/requirements/default.txt依赖要求,强制django-timezone-field只能使用>=4.0和<5.0版本的,开发者推送了一个4.1.1版本的django-timezone-field,中断了数据迁移过程。

解决办法:pipenv install django-timezone-field==4.0,重新执行数据迁移就可以了

总结

到此这篇关于django中cookiecutter使用教程的文章就介绍到这了,更多相关django中cookiecutter使用内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • django中cookiecutter的使用教程

    一.安装 导入:pipenv install cookiecutter 问题:在导入的过程中可能会报错: 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; p

  • django中的ajax组件教程详解

    Ajax(Asynchronous Javascript And XML)翻译成英文就是"异步Javascript和XML".即用Javascript语言与服务器进行异步交互,传输的数据为XML,(现在使用更多的是json数据). 向服务器发送请求的途径 1.浏览器地址栏 http://www.baidu.com 默认是get请求 2.form表单发送请求: GET请求 POST请求 3.a标签 href属性 默认是get请求 4.ajax() Ajax的特点 异步交互:客户端发送一个

  • Django中使用Celery的教程详解

    Django教程 Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django. Django是一个开放源代码的Web应用框架,由Python写成. Django遵守BSD版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 . Django采用了MVC的软件设计模式,即模型M,视图V和控制器C. 一.前言 Celery是一个基于python开发的分布式任务队列,如果不了解请阅读笔者上一篇博文Celer

  • Django media static外部访问Django中的图片设置教程

    有两种方式:一种是图片放在static中,一种是图片放在media中 第一种: 即: STATIC_URL = '/static/' STATICFILES_DIRS=[ os.path.join(BASE_DIR, "static") ] 运行项目然后 第二种方式: 用media这个文件存储图片,音视频等文件 补充知识:django {{ MEDIA_URL }}值为空 在模板中: <a href="#nowhere" rel="external

  • Django中使用MySQL5.5的教程

    "MySQL是一个功能齐全的关系数据库管理系统(RDBMS),可以与Oracle DB和Microsoft的SQL Server竞争.MySQL由瑞典公司MySQL AB赞助,该公司由Oracle公司拥有." 下面看下Django中使用MySQL5.5的方法,具体内容如下所示: 1.安装pymysql 使用pip install pymysql -i http://pypi.douban.com/simple/命令进行安装. 2.在Django项目文件夹下的settings中配置使用M

  • Django中ModelForm组件的简单配置与使用教程

    目录 1.前言 2.简单配置 3.创建模板文件,使用ModelForm组件 补充:django中的modelform快速上手 后言 1.前言 hello大家好,今天学习了modelform组件,所以自己总结一下内容,一来,是怕自己忘记了,二来,可以巩固下今天的知识,三来,或许我写的东西可以对一些初学Django的小伙伴带来帮助呢,哈哈,废话不多说,开始进入主题! 2.简单配置 创建好Django项目之后,首先到自己创建的app的models.py的文件下创建模型类,我就以一个添加学生的项目来介绍

  • Django中Model的使用方法教程

    前言 本文主要给大家介绍了关于Django中Model使用的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 创建模型 使用Django的模型主要注意两个方面:字段的类型和方法的重写.这里用一个例子来说明,其中包含了常用的字段类型和如何重写方法. from django.db import models class School(models.Model): pass class Message(models.Model): pass class Teacher(mod

  • Django中ORM的基本使用教程

    前言 Django框架功能齐全自带数据库操作功能,本文主要介绍Django的ORM框架 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接数据库,并编写数据访问层代码 业务逻辑层去调用数据访问层执行数据库操作 ORM orm(object-relation-mapping)对象关系映射,即用对象来表示关系数据库中的表: 类 --> 表, 对象-->一行数据 对象的属性-->一行属性的一个字段 比如说一个用户信息

  • django中静态文件配置static的方法

    环境 centos7 django 1.11 nginx 白话 我们可以使用Template 设置我们的网页,同时,一个完美的网页需要css,js,image 等静态文件的支持. django中配置方式貌似有不少总,因为很多相关的博客写的方式并不一致,当然这可能是django 的版本不同导致的. 当我们在一个项目下创建一个app后,我们就需要为该app下创建一个static 文件夹来存放相关静态资源. 但创建了多个app后,就需要在多个app下创建static. 这样引入了一个问题,因为,我们的

  • Django 创建后台,配置sqlite3教程

    1. 创建project django-admin.py startproject myweb1 2.创建app控制台输入 python manage.py startapp home 3.创建sqlite3数据库 3.生成test.db文件 4.在setting文件中添加数据库配置 5.进cmd进行数据库连接 6.定义模型 7. 安装模型 setting文件,INSTALLED_APPS中添加对应app名称 8. 注册model到admin 9.创建表格 10.同步数据 11.创建超级管理员

随机推荐