29 comments

[ 2.8 ms ] story [ 66.3 ms ] thread
I've been using it for a week or so now. NICE! The speed boost is very noticeable.
The speed improvement seems impressive will test soon ;)
We recently upgraded one of our sites in development from 3.2 to 3.3. There's a really appreciated level detail orientation in this release; the speed increases also help.

It's a pleasure to see Django CMS mature into something this polished. The stewardship from the OSS developers and Divio is something to be applauded.

That's a speedy step forward ;)
Anyone got any advice on Django-CMS vs Wagtail vs Mezzanine? We want to build a job site with a blog component. Any reason to choose or not choose any of them?
I may be biased =) but, I would use django CMS + Aldryn News & Blog, and perhaps Aldryn Jobs to start.

The thing that drew me to django CMS to start with still exists today, which is that django CMS recognizes that Django is a powerful application framework and the CMS embraces this. It also provides powerful front-end editing capabilities for you and your non-technical stakeholders, even for existing Django apps.

Can't weigh in on Mezzanine, and haven't built a site in any in over a year so things may have changed, but the big difference between Django-CMS and Wagtail come down to how your content is modeled. If you're looking to have a page with a variety of widgets that can be mixed and matched, then Django-CMS is probably more suited. If you've got a structured page where your users are going to be filling in predefined fields and the pages have more consistency then Wagtail is probably better.

The backend of Wagtail is completely geared towards authors, and a lot easier to use in my opinion, and it's got a media library built in. Django-CMS extends the standard django admin backend, may require a third party plugin for a media library, and tends to encourage more frontend editing, so authors will more immediately be able to see how a page looks. It also tends to be more flexible and can do more (which may be a good thing or a bad thing, depending on your goals). If you need more control over permissioning, workflows, etc. then django-cms may be a better choice.

I personally love both of them, and would recommend either.

I've used both as well and this perfectly crystallizes my thoughts on them. Integrating custom models felt a bit more cumbersome in Wagtail but I've mostly chalked that up to my own experience gap between the two CMSs.
Try them all! They take different approaches, and one might suit you better than another.

django CMS has addon applications for both jobs (Aldryn Jobs) and weblogs (Aldryn News & Blog).

If you're interested, you can join a free Guided Tour each week that will actually cover some how this all works in django CMS: https://www.divio.com/en/academy/aldryn-cloud-django-cms-gui...

For a fully-blown jobs site by the way you'd probably want to expand the Jobs application but it's open source software already so could be a good start.

I chose Mezzanine twice because community support works better than the other options (check GitHub issues and the mailing list traffic and feedback). I can't compare them technically side by side but I found easy to extend Mezzanine just looking into Django docs instead of looking at the specific Mezzanine implementation.

One point that put me in doubt in favor of Django CMS was the support for editing single page sections, you can do that in Mezzanine but it is not "native".

I'd back Wagtail. I had a look at both Mezzanine and Dj CMS a while ago and was relieved when I stumbled on Wagtail. Much flatter learning curve and the then recently introduced Streamfield was super helpful.

Doesn't hurt that it looks awesome as well.

We've always had our own hand-rolled CMS in Django (mainly because Django CMS didn't exist when I started).

Last time I looked at Django-CMS I found the UX of the admin to be a bit clunky - especially as something I'd want to give to clients and their staff. (Bear in mind I find Wordpress admin to be unbearably clunky too)

Just too many things on screen that would require an explanation, a "don't touch that or a "you don't need to worry about that".

Has that changed? What are other people's experiences?

The clunkiness you describe may be because the CMS includes djangocms-admin-styles, which provides a beautiful style- (and behaviour) "sheet" over Django's Admin. Not only does it make admin look nicer, but it also adds touch-capabilities which doesn't really exist in pure Django.
I've just spent months research different CMS alternatives and I've found vanilla Django to be far more pleasurable to work with than any of the add ons. Most of my clients can't be trusted to pick their own URL structures or deal with unnecessary buttons in the back end. Django gives me full control :)
This is one of the other reasons for hand-rolling our CMS - we got to control url structure, page layout, lock down WYSIWYG editing to just the required features (no, you can't have green text!) and countless other things.

The job of a client-facing CMS is NOT to be a flexible general purpose web editor - it's to allow the client to edit their content and enforcing enough constraints that it's hard for them to ruin their nice shiny new web site. :) (if any of my clients are reading - I know you would never do such a thing)

Glad to see I'm on the right track :) I spent too long figuring out that WordPress and Drupal are terrible, and then it took a while for me to find Django. Very little written out there about using Django to build brochureware.

If you don't mind me asking, could you write up a list of all the django apps and python packages that help the most in your projects? I'm new to the ecosystem and picking it up as fast as I can but there's only so many hours in the day. Obviously, I've chosen to do this live in the middle of a contract so it's sorta eating me alive.

Also, I'll take this chance make my short pitch: If you're ever looking for some extra hands on a project, I'm currently looking for freelance work. I do full stack. New to django, but very experienced with MVC frameworks and I'm quite excellent with frontend javascript. I can even hold my own when it comes to design and selecting stock photos :) e@ericwaldman.ca

The CMS evolved so much in the recent years :) love the development
Bummer, getting 403s every time I start a demo. The video looks a little non-intuitive and blackboxy in the way pages are built. Is there a WYSIWYG-esque visual layout concept in Django CMS these days?
I think it's a temporary cache-related glitch. Can you try deleting your browser cache, or simply trying again?

It's working for me here, anyway...

It's a 403 error, so it's probably unlikely it has anything to do with browser cache (but of course possible, though I don't know what Django would need from cookies/webstorage/cache). I did try on another machine in a incognito window and got the same thing 3 times.
OK, really sorry about that. We're working on it back here, we can definitely see a caching issue somewhere in the pipeline. Would you try once more in incognito mode?
(comment deleted)
How's the security of django compared to other CMS'es?
Django takes security extremely seriously: https://docs.djangoproject.com/en/1.9/topics/security/.

Any Django application that follows good practices and doesn't do anything daft will inherit those security benefits.

Django doesn't permit overwriting of its own program files for update procedures, for example, which some systems to.

(A CMS is by nature slightly more vulnerable, because of the potential for mishandling user-submitted content.)

Nice, I may have to check this out. I'm looking to setup a small site for myself with a blog and security always worries me if I look at things like Wordpress.
be careful not to confuse Django the framework (which is not a cms) with Django-CMS the cms built on top of Django the framework by a different set of people. I cannot comment on the security of django-cms because I didn't look into it but Django the framework tends to be "secure by default" i.e. has defaults that enforce csrf protection and other security best practices.
Sorry if you had any problems with our demos - it turned out that the A/B testing tool we had on the form was sometimes raising a 403 error - we've deactivated it and all is working smoothly now.
I didn't realize it, but Django CMS got OSS CMS of the Year Award from CMS Critic. That's very impressive.