Skip to content
Helper for Django applications development
Python HTML Makefile
Branch: develop
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app_helper Bump develop version [ci skip] Oct 12, 2019
djangocms_helper
docs
.codeclimate.yml Rename app to django app helper (#119) Oct 12, 2019
.coveragerc
.editorconfig
.gitignore Rename app to django app helper (#119) Oct 12, 2019
.travis.yml Add Django 2.2 - django CMS 3.7 (#124) Aug 16, 2019
AUTHORS
CONTRIBUTING.rst
HISTORY.rst Bump develop version [ci skip] Oct 12, 2019
LICENSE
MANIFEST.in
Makefile
README.rst Release 2.0.0 Oct 12, 2019
requirements-docs.txt
requirements-test.txt Add Django 2.2 - django CMS 3.7 (#124) Aug 16, 2019
requirements.txt
setup.cfg
setup.py
tox.ini Add Django 2.2 - django CMS 3.7 (#124) Aug 16, 2019

README.rst

Django App helper

Join the Gitter chat Latest PyPI version Python versions Latest Travis CI build status Test coverage Code Climate License

Warning

This project used to be called djangocms-helper. It's been renamed in version 2.0 to clarify that it's not limited to django CMS apps.

See Migrating from djangocms-helper to django-app-helper for further information.

Helper for django applications development

django-app-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.

Supported versions

Python: 2.7, 3.5, 3.6, 3.7

Django: 1.11 - 2.2

django CMS: 3.4 - 3.7

Newer versions might work but are not tested yet.

Common options

  • --cms: Loads configuration to properly run a django CMS-based application;
  • --extra-settings: Path to a helper file to set extra settings; see Project settings with Django App Helper for details;

Usage

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:

django-app-helper <application> <command> [options ...]

where <application> is the django application name and <command> is one of the available commands. Options vary for each command.

Base test class

A base test class is available to provide helpers and methods that implements repetitive tasks during development or compatibility shims (especially for django CMS).

Warning

Changes in version 1.2 might reduce the number of queries executed in tests rendering plugins.

If you are using assertNumQueries (or similar), this may yield unexpected failures.

Please check your code before upgrading django-app-helper.

Bootstrapping

To bootstrap a project using django-app-helper you may want to have a look at cookiecutter-djangopackage-helper, a cookiecutter template for django-app-helper.

To use it follows usage

Runner

By using the integrated runned in the settings file you'll be able to run the commands without invoking django-app-helper: see Integrated runner for reference.

Installation

Installing from pip:

pip install django-app-helper

Installing from source:

pip install git+https://github.com/nephila/django-app-helper#egg=django-app-helper

Requirements

  • django CMS optional; required only to work with --cms option
  • docopt
  • tox
  • dj-database-url

Documentation

Documentation is available on readthedocs.

Authors

django-app-helper was written by Iacopo Spalletti with help from other contributors.

Thanks

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.

You can’t perform that action at this time.