5 ms·
I would say so. The biggest difference I find is that Django makes a few too many assumptions and can be a pain to tweak the way you need. Web2py was created
by bigmanwalter 9y ago
I would say so. The biggest difference I find is that Django makes a few too many assumptions and can be a pain to tweak the way you need.
Web2py was created because the author found Django too difficult to teach to his students at DePaul University. He rebuilt Django while fixing many issues in how it was designed, and simplified the API significantly in the process.
Instead of Django's admin interface, web2py gives you a Grid component which allows you to create an Admin interface for any model/relationships that you like within any page you want. So your Admin pages are just another route/controller which use the grids as necessary.
Web2py's ORM is super nice to use. It's very similar to using plain SQL, and incredibly powerful. It holds your hands a bit less than an ActiveRecord style ORM but I find it also traps you in fewer corners. Especially when it comes to reports/aggregating data.
Likewise, it's a pain to set up email addresses for the user's username in Django, or to add custom fields to the User model. In web2py, it's dead simple.
Web2py has an easier to use authorization layer than Django's, and it handles migrations more smoothly.
Web2py's HTML templating language is much nicer than Django's. It's just python, nothing extra. Super easy to pick up.
Web2py forms support file upload fields, and image upload fields out of the box. It also has a module for automatically resizing image uploads as necessary. It includes a datepicker for date fields, and it also has the "LOAD" function which makes is super easy to Ajax up your site.
The other big thing that I love about web2py is that all the form/grid helpers output Bootstrap compatible HTML out of the box, so you can throw on a theme from Wrapbootstrap.com and just like that you have a beautiful site.
- NumberCruncher 9y agoAnd Web2py works well with Intercooler JS so you can get quite far without having to write any JS code.
- bigmanwalter 9y agoIt even has its own alternative to Intercooler built into the framework: http://web2py.com/books/default/chapter/29/12/components-and-plugins http://web2py.com/books/default/chapter/29/12/components-and... It's super cool :)