title: Django: Values_list returns id from choice field instead of name
body: <p>I have two models</p>
  
  <pre><code>class Model1:
     my_Choices = ((1, val1), (2, val2))
  
     field1 = choice_field(my_Choices)
     field2 = charfield
  </code></pre>
  
  <p>and another model which has ManyToMany field</p>
  
  <pre><code>class Model2:
      field1 = ManytoMany(Model1, related_name='rel_model2')
      field2 = Charfield
  </code></pre>
  
  <p>Now I have a list of objects(queryset) of Model2.(or for sake of simplicity assume I have an object of second model )</p>
  
  <p>now I do reverse filtering</p>
  
  <pre><code>Model2_obj.rel_model2.all()
  </code></pre>
  
  <p>OR (In my case)</p>
  
  <pre><code>Model2_obj.rel_model2.values_list('field1', flat=True)
  </code></pre>
  
  <p>this will return the list of ids from choices available in Model1(right?)
  e.g. <code>[1L, 2L]</code></p>
  
  <p>instead if this I want name/value (I mean list of values from choices)
  e.g. 
  <code>['val1', 'val2']</code>, </p>
  
  <p>I can do this by iterating over both id list and choice_list but can we do in a single ORM query/Pythonic way/efficient way?</p>