Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Best Django 'CMS' component for integration into existing site

So I have a relatively large (enough code that it would be easier to write this CMS component from scratch than to rewrite the app to fit into a CMS) webapp that I want to add basic Page/Menu/Media management too, I've seen several Django pluggables addressing this issue, but many seem targeted as full CMS platforms.

Does anyone know of a plugin that can easily integrate with existing templates/views and still sports a powerful/comprehensive admin interface?

like image 610
kkubasik Avatar asked Nov 19 '08 19:11

kkubasik


People also ask

Is Django good for CMS?

django CMS is user friendly and has a very intuitive drag and drop interface. It's built around the needs of multi-lingual publishing by default, not as an afterthought: all websites, pages and content can exist in multiple language versions.

Is Django a framework or CMS?

Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design. Built by experienced developers, it takes care of much of the hassle of web development, so you can focus on writing your app without needing to reinvent the wheel. It's free and open source. Ridiculously fast.

What is django CMS plugin?

djangocms-file django CMS File is a set of plugins for django CMS that allow you to add files to your site You can either choose a single file or an entire folder.


2 Answers

I have worked with all three (and more) and they are all built for different use cases IMHO. I would agree that these are the top-teir choices.

The grid comparison at djangopluggables.com certainly can make evaluating each of these easier.

django-cms is the most full-featured and is something you could actually hand over to clients without being irresponsible. Even though it has features for integrating other apps, it doesn't have the extensibility/integration of FeinCMS or the simplicity of django-page-cms. That being said, I think the consensus is that this is the best Open Source CMS for Django. However, it's docs are a little lacking. update: I have been told that integrating apps into DjangoCMS 2.1 has been improved.

FeinCMS - Is a great set of tools for combining and building CMS functionality into your own apps. It's not "out of the box" at all, which means that you can integrate it however you want. It doesn't want to take over your urls.py or control how you route pages. It's probably a prototype for the next-generation of truly pluggable apps in Django. - We are moving from django-page-cms to FeinCMS because our primary models is high volume eCommerce and I have custom content-types I want to integrate that aren't blogs or flash. Good documentation and support as well.

Django-page-cms - Is great if you want to just have some "About Us" pages around your principle application. Its menu system is not truly hierarchical and building your page presentation is up to you. But it's very simple, unobtrusive, and very easy to slap into your app and get a navigation going that clients can manage, or even for yourself. It has no docs that I know of, but you won't really need any. Read the code and you will get it all in 30 minutes or less.

update

Mezzanine - Is a very well designed CMS and one that I have finally settled on for most of my client work, mostly because it has an integrated eCommerce portion. But beyond that it has very extensible page models, and a custom admin interface that a client might be willing to use. It also has the best "out of the box" experience i.e. You can have a full fledged site up with one command.

like image 187
zenWeasel Avatar answered Oct 21 '22 21:10

zenWeasel


If you do not necessarily want a finished CMS with a fixed feature set, but rather tools on top of Django to build your own CMS I recommend looking into FeinCMS. It follows a toolkit philosophy instead of trying to solve everything and (too) often failing to do so.

http://github.com/matthiask/feincms/tree/master

Disclaimer: It is my brainchild, and the result of too many frustrating experiences trying to customize another CMS for the needs of my customers.

like image 26
Matthias Kestenholz Avatar answered Oct 21 '22 22:10

Matthias Kestenholz