Hacker News new | ask | show | jobs
by philangist 4672 days ago
Coding noob here. Can someone explain the problem with the

`for foo in queryset`

implementation? Is it that for loops are inherently inefficient? What would be a better alternative?

1 comments

I don't see a problem with an O(n) algorithm to set some property on n objects.
I think the issue is the call to save() (I assume this is meant to be outside the comma).

Basically, it'll hit the database after each query.

I originally thought it might be that too, but it seems to me like you'll have to hit the database n times for n queries no matter what. Unless Django has some builtin batch save functionality.
Hmm, there's bulk_create(), introduced in Django 1.4, to create multiple new objects in one DB call.

However, I'm not aware of anything that would do the same to update properties.