跳转到主要内容

一个用于快速创建生产就绪Django项目的Cookiecutter模板。

项目描述

Build Status Updates https://badges.gitter.im/JoinChat.svg

Cookiecutter提供动力,Cookiecutter Django是一个用于快速启动生产就绪Django项目的框架。

功能

  • 适用于Django 1.11

  • 与Python 3.6兼容

  • 以100%的起始测试覆盖率渲染Django项目

  • Twitter Bootstrap v4.0.0 - 测试版1(维护的Foundation分支也可用)

  • 基于12-Factor的设置,通过django-environ

  • 默认安全。我们相信SSL。

  • 优化开发和生产设置

  • 通过django-allauth进行注册

  • 附带可用的自定义用户模型

  • 使用Grunt构建compass和livereload

  • 通过Anymail发送电子邮件(默认使用Mailgun,但可切换)

  • 使用Amazon S3进行媒体存储

  • 使用docker-compose支持Docker开发与生产(使用支持CaddyLet'sEncryptdocker-compose

  • 用于部署到Heroku的Procfile

  • 部署到PythonAnywhere的说明

  • 使用unittest或pytest运行测试

  • 可自定义的PostgreSQL版本

可选集成

这些功能可以在项目初始设置时启用。

约束

  • 仅使用维护的第三方库。

  • 在所有地方使用PostgreSQL(9.2+)

  • 配置的环境变量(除AWS ELB外,Apache/mod_wsgi将无法工作)。

支持此项目!

此项目由志愿者运行。请支持他们在维护和改进Cookiecutter Django方面的努力。

为维护者提供财务支持的项目

Two Scoops of Django 1.11

Two Scoops of Django

Two Scoops of Django是宇宙中最好的以甜点为主题的Django参考。

pyup

pyup

Pyup为您带来由Google和其他组织使用的自动化安全和依赖项更新。开源项目免费!

用法

让我们假设你想要创建一个名为“redditclone”的Django项目。与其使用startproject然后编辑结果以包含你的姓名、电子邮件和各种配置问题,这些问题总是在最糟糕的时刻才被忘记,不如让cookiecutter为你做所有的工作。

首先,获取Cookiecutter。相信我,它很棒

$ pip install "cookiecutter>=1.4.0"

现在运行它对此存储库

$ cookiecutter https://github.com/pydanny/cookiecutter-django

你会被提示输入一些值。提供它们,然后就会为你创建一个Django项目。

警告:在此之后,将“Daniel Greenfeld”、“pydanny”等更改为你自己的信息。

回答提示,使用你自己的期望选项。例如

Cloning into 'cookiecutter-django'...
remote: Counting objects: 550, done.
remote: Compressing objects: 100% (310/310), done.
remote: Total 550 (delta 283), reused 479 (delta 222)
Receiving objects: 100% (550/550), 127.66 KiB | 58 KiB/s, done.
Resolving deltas: 100% (283/283), done.
project_name [Project Name]: Reddit Clone
project_slug [reddit_clone]: reddit
author_name [Daniel Roy Greenfeld]: Daniel Greenfeld
email [you@example.com]: pydanny@gmail.com
description [A short description of the project.]: A reddit clone.
domain_name [example.com]: myreddit.com
version [0.1.0]: 0.0.1
timezone [UTC]: America/Los_Angeles
use_whitenoise [y]: n
use_celery [n]: y
use_mailhog [n]: n
use_sentry_for_error_reporting [y]: y
use_opbeat [n]: y
use_pycharm [n]: y
windows [n]: n
use_docker [y]: n
use_heroku [n]: y
use_compressor [n]: y
Select postgresql_version:
1 - 9.5
2 - 9.4
3 - 9.3
4 - 9.2
Choose from 1, 2, 3, 4 [1]: 1
Select js_task_runner:
1 - Gulp
2 - Grunt
3 - None
Choose from 1, 2, 3, 4 [1]: 1
Select open_source_license:
1 - MIT
2 - BSD
3 - GPLv3
4 - Apache Software License 2.0
5 - Not open source
Choose from 1, 2, 3, 4, 5 [1]: 1

进入项目并四处看看

$ cd reddit/
$ ls

创建一个git存储库并将其推送到那里

$ git init
$ git add .
$ git commit -m "first awesome commit"
$ git remote add origin git@github.com:pydanny/redditclone.git
$ git push -u origin master

现在看看你的存储库。别忘了仔细查看生成的README。棒极了,对吧?

对于本地开发,请参阅以下内容

社区

  • 有疑问吗?在Stack Overflow上提问之前,请将你的问题发布在cookiecutter-django标签下。我们定期检查那里的问题。

  • 如果你认为你找到了一个错误或想要请求一个功能,请打开一个问题

  • 对于其他任何问题,你可以在Gitter上与我们聊天。

Two Scoops of Django的读者

你可能注意到,此项目的一些元素并不完全符合我们在第3章中的描述。原因是,此项目在许多方面都充当了尝试新想法和概念的测试平台。有时它们会起作用,有时则不会,但最终结果并不一定会与我在合著的书中描述的完全一致。

pyup.io用户

如果你正在使用pyup.io来保持你的依赖项更新和安全,请在结账时使用代码cookiecutter以每月15%的折扣。

“你的东西”

本项目中的Python和HTML代码散布着标记为“你的内容”的地方。这些地方是第三方库与你的项目集成的位置。

版本发布

需要稳定版本吗?您可以在https://github.com/pydanny/cookiecutter-django/releases找到它们。

这不是你想要的吗?

这是我想要的。 这可能不是你想要的。 不要担心,你有选择。

分支此项目

如果你对你的首选设置有不同意见,我鼓励你分支此项目以创建自己的版本。一旦你的分支运行正常,让我知道,我会将其添加到这里的“类似Cookiecutter模板”列表中。是否重命名你的分支由你决定。

如果你重命名了你的分支,我鼓励你提交到以下地方

  • cookiecutter,以便在README中列出为模板。

  • Django Packages上的cookiecutter 网格

提交拉取请求

如果拉取请求小、原子化,并使我们的项目开发体验更好,我们接受拉取请求。

文章

如果你有一个博客或在线出版物,请撰写关于cookiecutter-django技巧和窍门的文章,然后发送包含链接的拉取请求。

行为准则

在Cookiecutter项目的代码库、问题跟踪器、聊天室和邮件列表中互动的每个人都应遵守PyPA行为准则

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

cookiecutter-django-1.11.9.tar.gz (7.1 kB 查看散列)

上传时间

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面