轻量化django cookiecutter模板
本项目使用cookiecutter创建项目后,可以批量创建django app。 使用python manage.py startapp <app_name>后,一般要做以下的配置工作:
- 在settings.py中添加app
- 创建
urls.py,将url.py内容添加到project_name/urls.py - 创建templates\app_name文件夹,可能需要创建index.html文件
- 在views.py中添加默认的index方法
- 其他可能的配置,如admin.py等 在这个过程中,很容易出错,因此需要自动化的方法来进行配置。
背景知识
在使用本项目时,默认用户已具备了cookiecutter和Django的背景知识。 官方提供的模板django-cookiecutter太重了,web项目一般不需要那么复杂,所以我自定义了一个轻量化的模板。
Github地址
moomboss cookiecutter 在项目的Readme中说明如何安装和使用模板。
cookiecutter git@github.com:silentQQQ/cookiecutter.git设计思路
- 使用cookiecutter生成项目结构,包括自定义的settings.py文件等。所有的app应该放在apps文件夹下。
- 创建项目后,使用项目下add_app.py批量创建apps,这个脚本完成了文章开头所说的人工操作内容。
python add_app.py app1 app2 app3- 创建完app后,可以测试app是否正常。
python manage.py runserver访问 http://127.0.0.1:8000/app1/
hello app1
使用建议
- 用户最好fork本仓库,clone到本地,然后进行修改。如settings.py中关于时区时间的设置、数据库的设置、邮件的设置等。
- 用户可以修改
cookiecutter.json文件,对项目进行自定义配置。 - 用户可以修改\hooks\pre_gen_project.py和post_gen_project.py,这是cookiecutter创建项目前、项目创建后的钩子函数,可以做一些自定义操作。
- 用户可以扩展生成项目下的
add_app.py文件,在创建app时,进行自定义操作。
如有好的建议,欢迎提issue