

Five Things I Hate About Django. - shabda
http://42topics.com/blog/2008/04/five-things-i-hate-about-django/

======
thingsilearned
I thought this would would be junk but they were valid points.

I dislike however when people state "AJAX in Django is Hard". Its not hard,
there are just no helper functions. So AJAX is AJAX in Django. He explains
that in the article but catchy titles are what people read and remember. The
title should instead be "Django has no helper functions for AJAX"

That I agree with and think should be changed. Is anyone working on this?

~~~
apgwoz
There are AJAX helper functions in Django, they just don't produce JavaScript.
Instead they make it stupidly easy to get back data in JSON, and most
importantly leave which framework and everything else up to you.

~~~
m0nty
I agree about the stupidly easy JSON handler -- I went from nought to finished
app in about 10 minutes, when I wasn't even too sure what JSON was or why I
should use it. Wikipedia helped a bit with the understanding, and Django just
dumped the objects into JSON without any problem.

The article was basically valid but I didn't find myself thinking "yes, I hate
those damn things as well." More like "well, that can be mildly inconvenient,
but wtf, nobody's dead yet." I use jQuery for AJAX and it's so easy I'm not
sure I even want it built in to Django.

------
niels
"Bonus question: How can you generate a form with same form elements multiple
(and variable number) times, ala what happens with edit_inline?"

That is very easy, just create multiple instances of the same form object, and
give a unique prefix argument to each instance. See this blog post for more
info: [http://www.pointy-stick.com/blog/2008/01/06/django-tip-
compl...](http://www.pointy-stick.com/blog/2008/01/06/django-tip-complex-
forms/)

------
mrtron

         6.This can only create a form with a fixed number of   
      fields. While there are ways to generate forms with  
      variable number of fields, (generate the Form class   
      programatically), they are not easy or well documented. 
      (Remind me to write such tutorial sometime.)
    

I don't know if there are many tutorials, but this is pretty trivial.

The rest are valid points.

------
g00dn3ss
One of the biggest drawbacks for me is the crazy assumption that I should
check out directly from their repository and use whatever half baked thing
happens to be in there at the time. Sure, I can use the stable version but
then none of the plug-ins work. The whole Django website is built around the
assumption that I'm running directly from the repository.

------
evdawg
I think the author misses two of Django's biggest drawbacks (at least for me):

1\. Lack of migrations

2\. Poor REST support

