djangocms-helper is a set of commands and helper methods to make developing and testing reusable Django applications easier.
Being born in the django CMS ecosystem, it provides a lot of utility functions to develop, run and test django CMS applications.
It's a modified version of django CMS's own develop.py
script, modified to handle generic application development process.
Python: 2.7, 3.4, 3.5, 3.6
Django: 1.8 to 1.11 (limited 2.0 support)
django CMS: 3.4, 3.5
Warning
Starting from version 1.1, compatibily nose test runnerhas been dropped. Pin your test requirements accordingly (djangocms-helper<1.0
).
Warning
Starting from version 1.0, compatibily with Python 2.6, Python 3.3, Django<=1.7 and django CMS<=3.3 has been dropped. Pin your test requirements accordingly (djangocms-helper<1.0
).
--cms
: Loads configuration to properly run a django CMS-based application;--extra-settings
: Path to a helper file to set extra settings; see Settings section for details;
The command must be executed in the main plugin directory (i.e. in the same directory as the setup.py
file) as it needs to import files relative to the current directory.
The basic command structure is:
djangocms-helper <application> <command> [options ...]
where <application> is the django application name and <command> is one of the available commands. Options vary for each command.
To bootstrap a project using djangocms-helper
you may want to have a look at cookiecutter-djangopackage-helper, a cookiecutter template for djangocms-helper
.
To use it follows usage instructions
By using the integrated runned in the settings file you'll be able to run the commands without invoking djangocms-helper
: see Integrate runner for reference.
Installing from pip:
pip install djangocms-helper
Installing from source:
pip install git+https://github.com/nephila/djangocms-helper#egg=djangocms-helper
- django CMS optional; required only to work with
--cms
option - docopt
- tox
- dj-database-url
Documentation is available on readthedocs.
djangocms-helper was written by Iacopo Spalletti with help from other contributors.
The general logic and part of the code of the whole application is heavily taken from django CMS's own develop.py so all the contributors deserve a huge thanks for their work.