Download Django CMS

This assumes you have already downloaded and installed Django. See Getting Started if you haven't, then come back here.

Create a directory in which to keep Django applications and modules for your project. You can keep this inside your project folder, but it is more sensible to keep them somewhere else, so that all projects have access to them, though this requires that the directory for applications is on the PYTHONPATH.

Django CMS 2 lives online at http://github.com/digi604/django-cms-2.0/tree/master.

Create a downloads directory, and then inside it:

git clone git://github.com/digi604/django-cms-2.0.git

This gets the Django CMS code and puts it in a directory called django-cms-2.0.

Subsequently, you can update this from the repository with:

git fetch origin

Set up a modules directory

Next to the downloads directory we'll make one called modules.

This will contain symlinks to the applications and modules downloaded - Django will look for them in here, once you have added this directory to your PYTHONPATH,

mkdir modules
cd modules
ln -s ../downloads/django-cms-2.0/cms
ln -s ../downloads/django-cms-2.0/mptt
ln -s ../downloads/dhango-cms-2.0/publisher

Supporting apps

Django CMS requires Reversion: http://code.google.com/p/django-reversion/

In the downloads directory, do :

svn checkout http://django-reversion.googlecode.com/svn/trunk/ django-reversion

Once again, link to reversion (which is now at django-reversion/src/reversion) from modules - in modules, do:

ln -s ../downloads/django-reversion/src/reversion

The example project

Django-CMS is supplied with a an example project. Use that to start with.

Troubleshooting

'Error: No module named cms'

If you receive this error, the first thing to check is that the PYTHONPATH is being correctly read by python. You can do this as follows :-

From within the python command line interpreter

import sys
print sys.path

and compare this to what is configured within your command line environment. If they do not match, possibly the simplest approach is to choose one of the directories that the python interpreter sees as being in its path and create symblinks from there to the individual directories mentioned above