97 lines
2.9 KiB
ReStructuredText
97 lines
2.9 KiB
ReStructuredText
REQUIREMENTS
|
|
============
|
|
- Python 3
|
|
- Python package virtualenv (in most cases this is distributed or installed together with python)
|
|
- Django (will be installed automatically)
|
|
- Several additional django related python packages (will be installed automatically)
|
|
|
|
For production use you surly want a real web server that supports WSGI
|
|
(e.g. Apache httpd with mod_wsgi) and a real Database like PostgreSQL.
|
|
|
|
|
|
QUICK INSTALLATION FOR THE IMPATIENT
|
|
====================================
|
|
- python setup.py mkpyenv
|
|
- source env/python/bin/activate
|
|
- python setup.py quickdev
|
|
|
|
|
|
INSTALLATION
|
|
============
|
|
|
|
1. Python Environment
|
|
---------------------
|
|
It is strongly recommended to create a separated python environment
|
|
for this django project. But it is not exactly necessary.
|
|
|
|
The creation of a separated python environment is very easy with the
|
|
virtualenv tool (a python package).
|
|
|
|
If you decide to not use virtualenv, proceed with step 2.
|
|
|
|
- Create the python environment in a directory called ./env/python:
|
|
|
|
``virtualenv --prompt="(dav)" ./env/python``
|
|
|
|
- If you use a posix compatible shell (like bash, the linux default shell),
|
|
you have to activate the environment for the current shell session
|
|
with the following command:
|
|
|
|
``source ./env/python/bin/activate``
|
|
|
|
Your shell prompt should be prefixed with '(dav)' now.
|
|
|
|
Do not exit the shell session (nor deactivate the environment) until the
|
|
whole installation is done.
|
|
After that you can call the command ``deactivate`` to deactivate the project
|
|
environment and access the systems standard python environment again.
|
|
|
|
If you have left the session or deactivated the environment and want to
|
|
reactivate the environment (e.g. to execute a python command) use the
|
|
previous ``source ...`` command.
|
|
|
|
2. Install files
|
|
----------------
|
|
|
|
- ``python setup.py develop``
|
|
- ``django-dav-events-admin setup ./env/django``
|
|
|
|
The django project directory ('./env/django' within the previous example)
|
|
will be called *project root* for now on.
|
|
|
|
3. Enable modules
|
|
-----------------
|
|
Our web application consist of several modules, that care about single
|
|
aspects of the whole picture.
|
|
You want to enable some of those modules by execute a
|
|
management command.
|
|
|
|
Change into the *project root* (where the file ``manage.py`` lives)
|
|
and run
|
|
|
|
- ``python manage.py enable_module dav_auth``
|
|
- ``python manage.py enable_module dav_events``
|
|
|
|
4. Create the database schema / Populate the database
|
|
-----------------------------------------------------
|
|
While you still are in the *project root* directory, run
|
|
|
|
- ``python manage.py makemigrations``
|
|
- ``python manage.py migrate``
|
|
|
|
5. Create a super user or administrator account
|
|
-----------------------------------------------
|
|
While you still are in the *project root* directory, run
|
|
|
|
- ``python manage.py createsuperuser``
|
|
|
|
6. Start test server
|
|
--------------------
|
|
While you still are in the *project root* directory, run
|
|
|
|
- ``python manage.py runserver``
|
|
|
|
Now you should be able to connect to the test server via
|
|
|
|
http://localhost:8000
|