Generate Django boilerplate
The default django-admin startproject is quite simple. You can provide template for the generated code to replace the default like in this example, but it does not any of the following features:
- Additional configuration parameters
- Save configuration to disk
- Re-run the generator
First, install Yeoman and generator-django-ana using npm (we assume you have pre-installed node.js).
npm install -g yo
npm install -g generator-django-ana
Then generate your new project:
yo django-ana
The generator creates a new project with:
- A default
requirements.txt
with most useful Django packages. - A default
package.json
file with the appropriate description and dependencies for front-end management. - Default meta documents:
README
, privateLICENSE
,CONTRIBUTING
,CHANGELOG
. - Default
.gitignore
and.editorconfig
files. - A standard Django
manage.py
script. - A default
gulpfile.js
for managing front-end. - A
newrelic.ini
configuration file for Python. - The main application python package with settings for development, testing and production, wsgi and mod_wsgi scripts and main urls routes.
- An additional 'core' python package for specifying application information, use signals and template tags.
- Default media, private and templates directories.
- A
.yo-rc.json
local yeoman configuration file with the options used to generate the project.
The generator prompts for the following information:
-
Project name: the generated project name (snake case). Used in:
README.md, package.json, manage.py, gulpfile.js, _venv
,_name_/ settings*.py, urls.py, wsgi.py, wsgi_mod.py
,_name__core/apps.py
. -
Pascal name: the generated project name (pascal case). Used in:
_name__core/ apps.py, tests.py
. -
Verbose name: a verbose project name, spaces allowed. Used in:
_name_/settings.py, _name__core/apps.py
. -
Description: project description. Used in:
README.md, package.json, _name_/settings.py
. -
Git repository URL. Used in
package.json
. -
Author. Used in
package.json, LICENSE, CONTRIBUTING.md
. -
Deploy host: optional for
npm deploy
command. Used in:package.json
. -
Allowed host: Used in:
_name_/ settings_live.py, wsgi_mod.py
. -
New Relic license key. Used in
newrelic.ini
.
Usually perform the following actions:
vf new -p python3 VIRTUALENV
pip install -U pip setuptools wheel
pip install -U -r requirements.txt
./manage.py migrate
./manage.py createsuperuser
MIT © Wtower