Skip to content

Improve installation instructions #265

@gw0

Description

@gw0

The documentation for installation instructions and configuration (http://readthedocs.org/docs/feincms-django-cms/en/latest/installation.html) is not obvious and well documentet on how to get a simple basic FeinCMS to work.

My steps and thoughts (that could discourage some users) when reading the page and installing were:

  • pip install django or easy_install django is not explicitly mentioned in the example, so it seems I must read all the boring text
  • then a prerequisite is django, lets install it
  • then install feincms
  • hm, django-mptt seems like another prerequisite, but why isn't it listed next to django (and also why isn't it automatically installed as a dependent Python module when using pip)
  • then here is a list of optional packages to install
  • lets prepare a django project: django-admin.py startproject test
  • edit settings.py and add feincms and feincms.modules.page to INSTALLED_APPS and configure static directories
  • ./manage.py syncdb
  • ./manage.py runserver gives error about mptt
  • add mptt to settings.py (weird they didn't explicitly mention it)
  • ./manage.py runserver
  • open browser and see a "Error: 'PageAdmin.fieldsets[0][1]['fields']' refers to field 'template_key' that is missing from the form" error (https://groups.google.com/group/django-feincms/browse_thread/thread/263ea8c72e737b5a)
  • oh, lets check FAQ (http://readthedocs.org/docs/feincms-django-cms/en/latest/faq.html), but it isn't there, google also doesn't find much
  • lets see if there are better instructions in the source repository and checking out quickstart.sh, testing it and figuring out what needs to be done
  • after some time figuring out that the Page.register_templates and similar are the essential to making it work, finding instructions this on the page module documentation
  • now there are some Image related errors, lets install PIL although it is mentioned as required
  • finally it works with some deprecation warnings
  • wondering how many people just gave up because of the incomplete and too complicated installation instructions

Therefore my suggestion would be to include it in QUICKSTART.rst and on http://readthedocs.org/docs/feincms-django-cms/en/latest/installation.html examples of instructions to getting a simple basic most common FeinCMS installation up. This means in Installation chapter things like:

# optionally prepare an isolated virtual environment:
virtualenv --no-site-packages mycms
cd mycms
source bin/activate
# install dependencies:
pip install django django-mptt pil
# other optional dependencies:
pip install lxml django-tagging feedparser
# install feincms
pip install feincms

And later in the Configuration chapter:

Create file modules.py directly in the project directory or in an app and put in it Page.register_templates() like on http://readthedocs.org/docs/feincms-django-cms/en/latest/page.html .

In settings.py configure static files and add apps:

INSTALLED_APPS = (
    ...
    'feincms',
    'feincms.module.page',
    #'feincms.module.blog',
    #'feincms.module.medialibrary',
    'mptt',
    'name-of-your-project-or-app-with-register_templates',
    ...
)

To initialize:

./manage.py syncdb
./manage.py collectstatic

This instructions should also be same in QUICKSTART.rst.

The error "Error: 'PageAdmin.fieldsets[0][1]['fields']' refers to field 'template_key' that is missing from the form" and the exception on missing PIL module should be explicitly mentioned on the FAQ page (http://readthedocs.org/docs/feincms-django-cms/en/latest/faq.html).

In my opinion this would have a very positive effect on the user experience of new potential users that want to configure their Django installations from scratch.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions