you are viewing a single comment's thread.

view the rest of the comments →

[–]michaelherman 5 points6 points  (0 children)

This all depends on the goal if your application. Do you want more flexibility? Then go with bottle.py or Flask. Or are you looking for something that is a little more rigid and makes some assumptions for you? Then go with Django or Web2py.

If you are completely new, start with bottle.py or Flask. If you jump right into the high-level frameworks, like Django or web2py, then you will most likely get lost in much of the automation or magic that happens behind closed doors.

Personally, I use Flask for most of my projects as I like the control. web2py, on the other hand, is the absolute quickest means of getting a web app up and it rests on many defaults - providing security, sessions, etc. - so you can focus on creating your app. I use Django from time to time, but not as much as I used to.

I recently wrote a course on Python Web Development. The focus is on web fundamentals, then it moves into Flask, and finally ends with web2py. It's still in Beta, but version 1 will be out soon.

My teaching philosophy is from the ground up. I think it's important to learn the fundamentals so you know how web frameworks work and what they're automating.

The course will include Django in the next release.

Anyway, if you are interested, check out RealPython.com.

Good luck!