On Thu, Feb 13, 2014 at 7:13 PM, Coral Sheldon-Hess <[log in to unmask]>wrote: > Here's a broad question, re: Python and Django: If you've made the switch, > what has your experience been? Has Django (or any other Python framework) > given you something cool that was lacking in your previous > language/framework/CMS? Has it helped you build something awesome? Have you > found it enabling or limiting in any way? I found it shockingly straightforward to get started. djangobook.com is excellent, though out of date. I agree with Francis that Two Scoops is indispensable. #django is friendly. docs.djangoproject.com is pretty good most of the time (although when it is not you can tear your hair out for a week *cough*FormWizard). I haven't done a CMS on Django; I have worked on http://unglue.it and http://customfit.makewearlove.com, both Django-based. Oh, and there's http://www.babyanimalslovelita.org/ , because building toy Django projects in a day FTW. I love that it lets me work with database *concepts* without ever having to write a line of actual SQL ( *shudder* ). (I mean, yes, you can write SQL, you may run into cases where you want to for performance reasons, although to be honest you probably won't. But you don't HAVE to.) And south handles the black magic of database migrations pretty effectively, for when you need to make changes. Also that there's probably a module that does X, for most values of X. > And then a more specific question: Given the following requirements, do you > have a Django-based CMS you'd recommend? Here is 100% of what I know about Django-based CMSes: the Mezzanine maintainer seems like a decent sort. > * There's a chance we'll want to offer other editors access to it, at some > point, so it would be nice if I can provide a WYSIWYG interface, which I > also am going to want the option to *turn off*, for my own sanity. > There's a flatpages app that probably does this. In a couple weeks I'll even be able to tell you something about it. > plans, so easy JavaScript (preferably jQuery) integration is a must. > Write it into the template just like you'd write it into HTML anywhere. > * Because I probably won't be here forever, it's of the utmost importance > that whatever we end up with is easy to maintain. > Yeah, this is my main concern with your idea -- the roll-your-own flavor means that you are RIGHT NOW reducing your institution's truck number to 1. I want to hear your documentation and training plans so I can stop twitching. > * I'm used to MODx's page-ID model, where I can move pages around, and as > long as I don't delete/recreate a page (thereby changing its ID), I don't > have to change any links anywhere else in the CMS. I'd really like > something that will work equally well, since the odds that I'll nail the > information architecture on the first try are probably slim. :) (Maybe this > one should go without saying, since I know WordPress and many other CMSs do > this, but if you have to err, err on the side of being explicit, right?) > Django has a built-in concept of named URLs. You declare the names when you define the URLs and best practice is to reference them in templates by their names: {% url myurlname %} This means you can futz around arbitrarily with what the URLs in your location bar look like, and none of the template references change (and yes, it's like *clouds part, angels sing* ). There's a hiccup if you decide you need to move some URLs to a new namespace, but it's not conceptually hard work to fix that, just conscientious. > * A nice forms-builder plugin (module?) would be a great thing to have, as > well. We use FormIt in MODx, and now I'm spoiled. > Building django forms from database models is tremendously slick and makes your CRUD operations very straightforward. There's a crispy-forms module you can use to make them all pretty; frankly it's a pain (the documentation is copious yet never QUITE seems to answer your question), but it does give you eleventy bajillion tools for making things look exactly like you want, and is Bootstrap-friendly. Forms not linked to db models take a bit more work, but I have rarely found the need to write them. Andromeda Yelton LITA Board of Directors, Director-at-Large, 2013-2016 http://andromedayelton.com @ThatAndromeda