title: Get multiple rows with one query in django?
body: <p>How can I get build a QuerySet that gets multiple rows from django? I thought filter() would work, but it seems to be worse off.</p>
  
  <p>For example, I have two rows in the model Car, with two text attributes (license and vin). Now say I want to print the licenses and vins from these cars. How can I do that with one database call?</p>
  
  <p>Here's an answer that will make two database calls:</p>
  
  <pre><code>#using get(), two total queries
  a = Car.objects.get(id=1) #query here
  b = Car.objects.get(id=2) #query here
  print(a.license + a.vin) #no query
  print(b.license + b.vin) #no query
  </code></pre>
  
  <p>That obviously didn't work because I made two get() queries. So next I'll try filter():</p>
  
  <pre><code>#using filter(), four total queries
  c = Car.objects.filter(id__in=(1,2)) #no query
  print(c[0].license + c[0].vin) #two queries
  print(c[1].license + c[1].vin) #two queries
  </code></pre>
  
  <p>Hmmm, that's weird, why is making four database calls? Is there a way I can make it get the two in one database call?</p>