Djangos ORM query mechanism feels (to me) to be a bit more ugly than Rails AR:b.
> thing = User.find(:first)
> thing = User.objects.all()
Having said that, Django has some serious scalability. For instance, if you tried to do a 1-2-1 translation of the above django code into rails you would get
> thing = User.find(:all)
But please, if you just tried that, I am sorry. What you get is a HUGE database churn and an even big memory hit as Rails attempts to instantiate an array of objects for every record in your user table before discarding all but the first.
Which is why, I read with wonder and delight about Arel (a core part of Rails 3.0)
I started writing this, after having read the first couple of paragraphs of the above link. While I was typing here I said to myself, "that would not happen in the django area, they would not accept a good idea from another framework like that!". I really expected some nod to Djangos Managers as inspiration, I felt that the author would be a big enough man to be able to admit where a good idea came from. A nod at least. But, before I put anything into this post like that, I thought, hang on, thats prejudice, you have not read the whole article yet. So I stopped typing, switched tabs and read through to the end. Not a mention of Django. some mention of sqlAlchemy, but not a nod to Django. I was disappointed. Maybe not big enough at all.
Still, I hope I get a chance to work on a rails 3.0 project soon to be able to experience it and say, once again, and with pride "I am a RoR developer".