tags:

views:

4119

answers:

7

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?

+2  A: 

See django-plugables website, there are few CMS components for Django listed (and some look really good).

zgoda
django-plugables link doesn't work, took me to a blank page
bskinner
http://djangopluggables.com/
zenWeasel
+1  A: 

I've had success with integrating django-cms. Just include it at the end of your urlconf and it won't interfere. (You'll just lose the the nice 404 page when DEBUG=True)

Using various combinations of context processors and custom template tags I've been able to do everything I've needed, but if you really need to insert the content into your own view, that should be easy enough. (Perhaps call cms.views.render_page() with a template that lacks all the wrapper html?)

Matthew Marshall
VN44CA
Hmm... at this point I don't remember what I used it for... Lately I've been using django-page-cms, as it's less complicated to hand off for someone else to use.
Matthew Marshall
+5  A: 

There is also this one that is quite nice as well:

Django CMS page

Actually it is called Django Page CMS, but it looks good.
jamting
This was my favorite of them all, easiest and most flexible to use.
kkubasik
Hi Kkubasik, I wonder if you have a site that is django-page-cms powered. Just wondering what you have used it for.
VN44CA
I don't have a big on that is. I have done some smaller Non-profit/event sites in it, as well as django-cms as a part of making my decision here.
kkubasik
+4  A: 

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.

Matthias Kestenholz
+3  A: 

If you need some more features then the simple django-page-cms just checkout django-blocks (http://code.google.com/p/django-blocks/). Has multi-language Menu, Flatpages and even has a simple Shopping Cart!!

kimus
+3  A: 

There is a very nice overview of Django CMS apps on the Django wiki!

http://code.djangoproject.com/wiki/CMSAppsComparison

hopla
+2  A: 

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.

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.

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. It's menu system is not truly hierarchical, there is no WYSIWYG editor, 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.

There also several projects out there that add functionality to django-page-cms so you can add bits (like a WYSIWYG).

zenWeasel