I really love python. But I don’t really know why. I come mostly from Java background and I wanted to use something in python so that i could quickly prototype my application which then i would have ported to Java.
I came across several post saying nice things about django framework in python and i decided to give it a spin.
After doing some basic crud application, i felt disappointed. Don’t get me wrong, i’m not biased towards Java. It’s just that I wanted to build applications for the enterprise and clearly saw that django was too trivial for such kind of task.
django is really for the Publishing world. Ya , it can churn out database driven application pretty easily and I liked it’s templating engine, but there was no clear level of separation and productivity which I was looking for.
In django the urls.py file is basically the controller, in the sense it decides which url request will go to which views. The views will have all the business logic ( it’s bit confusing in django ). The views after doing some business logic can send the data back to the template along with context data with it, which is automatically populated in the template.
so the flow is kind of
url request -> urls.py -> views -> template
and ya the good feature is you can direclty use ORM in case of django.
After having worked in Spring and Struts framework, I don’t think django framework can be that maintainable as far as enterprise software is concerned.
If anybody of you know or are doing some enterprise stuff in django, apart from CMS, Blogs or wiki than please let me know.
As i said, I really do like python.