django-gov

Base Django Application for MoJ Gov


License
MIT
Install
pip install django-gov==0.2.1

Documentation

Base Django App for MoJ

This can be used as a base to build MoJ Django applications. It includes some useful Django packages along with the Gov.uk template. It also includes flake8 code style test.

Includes

Django

django-cors-headers

django-extended-choices

django-filter

django-moj-irat

django-rest-swagger

djangorestframework

flake8

openpyxl

PyYAM

requests

Dependencies

  • Python 3.5 (can be installed using brew install python3)

Installation

Install via pypi

pip install django-gov

Features

govuk_template Django template and static directory are included in the package. You can extend the GovUK Template directly

{% extends 'govuk_template/base.html' %}

You can also download the latest govuk_template taball and extract the contentents to a directory of you choice

./manage.py update_gov_template -d /path/to/directory/to/unpack/

This will add the templates and static directories from the latest release of govuk_template to the directory passed as -d

You can include the default settings for all the included apps above by including the default settings in your app settings.py file

from django_gov.settings import *

You can include the urls for the healthcheck endpoints

url(r'^', include('django_gov.urls'))

Testing

If you include the whole default settings, this will add flake8 code style tests to the directory you run your apps.

You can add a setup.cfg file containing your flake8 settings to the base directory of your app.

[flake8]
exclude = .git/,env/,venv/,node_modules/, manage.py
max-complexity = 10
max-line-length = 120

API Docs

django-rest-swagger is also included. The template has been modified to use the govuk_template as a base.

see https://github.com/marcgibbons/django-rest-swagger for instructions on how to set up Swagger