Skip to content

Latest commit

 

History

History
28 lines (20 loc) · 1.27 KB

README.md

File metadata and controls

28 lines (20 loc) · 1.27 KB

Havel CMS

This is not actively developed anymore. Please use Wagtail CMS instead https://wagtail.io

A basic Django based CMS

Havel is a thin CMS app for Django. Its main thing is a Resource class that inherits from MPTTModel and is thus placed within a tree. It contains the main meta information that make a resource like title, slug, creation dates and so on.

The next important class is Page. This is also a Resource and has additional fields like text and meta summary. Every page can have a different template, which is defined as string but can also be made as a ChoiceField by using the RESOURCES_TEMPLATES setting, that defines a list of (template_path, template_name) tuples.

To use Havel in your project, add HavelCMS and HavelCMS.contrib.attachments to INSTALLED_APPS and add the URL

(r'^', include('HavelCMS.urls')),

This catches all URLs, parses them for slugs and tries to find the appropriate page in the tree. The page is then rendered using the specific template.

Havel is a quick and simple way to have a tree of resources with configurable templates, and have these rendered in the templates easily. If you have a use case like that, you don't need to write models, views and admin classes. Just use this CMS.