django-mini
django-mini copied to clipboard
Run plug-able Django apps without a settings module
django-mini
Django-mini is an MIT-licensed command-line utility for running Django_ management commands without a settings module. It is intended to help developers run and test stand-alone Django apps.
.. _Django: https://www.djangoproject.com/
Installation
Install using pip from PyPI::
pip install django-mini
Alternatively, download the source_, unpack it and install it like a typical Python distribution::
python setup.py install
The installation consists of a single pure-Python module called djangomini and an executable script django-mini.py. Django-mini assumes a recent version of Django is already installed.
Basic Usage
Django-mini has a few flags for configuring Django settings, and then any other arguments are passed to Django's management utility so it can do its stuff.
--database <database>- to specify the default database.--app <appname>- adds your app package to Django'sINSTALLED_APPS.--admin- adds Django's built-in admin and its requirements.--debug-toolbar- adds Rob Hudson'sdjango-debug-toolbar_ and its requirements.-por--persisting- use an sqlite database nameddjangomini.sqlite.
.. _django-debug-toolbar: https://github.com/django-debug-toolbar/django-debug-toolbar
If you don't use the persisting option or specify a database, django-mini will use an in-memory sqlite database (implying it will get destroyed after the command finishes).
To run Django with your app and the built-in admin, use a named database::
django-mini.py --database /tmp/django.sqlite --admin --app myapp syncdb
django-mini.py --database /tmp/django.sqlite --admin --app myapp runserver
Or use the persisting option::
django-mini.py -p --admin syncdb
django-mini.py -p --admin runserver
That will start Django's development server with the admin. The admin application will be available at http://localhost:8000/admin/ and all other requests will be directed to your app, i.e. your app's myapp.urls is configured to serve all other requests.
The full documentation_ has more examples of use, including how to use other databases, how to change any setting, and how to mount an app at a particular URL.
.. _The full documentation: https://github.com/davidwtbuxton/django-mini/blob/master/docs/index.rst .. _Download the source: https://github.com/davidwtbuxton/django-mini