title: Django's choices field don't match
body: <p>I have 2 models that have the same field using a choices tuple, yet when I compare them, they aren't equal.</p>
  
  <pre><code>TEAM_CHOICES = (
      ('ANA', 'Anaheim'),
      ('ARI', 'Arizona'),
  )
  
  
  class GameData(models.Model):
      player_name = models.CharField(max_length=50)
      team = models.CharField(max_length=3, choices=TEAM_CHOICES)
      goals_scored = models.SmallIntegerField()
  
  
  class GameResult(models.Model):
      date = models.DateField('game date')
      away_team = models.CharField(max_length=3, choices=TEAM_CHOICES)
      home_team = models.CharField(max_length=3, choices=TEAM_CHOICES)
  </code></pre>
  
  <p>Yet, when I go into my console and do:</p>
  
  <pre><code>&gt;&gt; GameData.objects.first().team
  u'ARI'
  &gt;&gt; GameResult.objects.first().away_team
  u'Arizona'
  </code></pre>
  
  <p>I found out via debugging that I forgot to use the acronyms for team names when I used Django's ORM to create this data. But shouldn't the max_length attribute on the field have prevented something like this from happening in the first place?</p>
  
  <p>EDIT/SOLUTION: I'm using SQLite which doesn't enforce the VARCHAR limits.</p>