title: django - int argument must be a string or a number, not 'Tuple'
body: <p>I've been looking at this for a couple hours and I can't seem to get a handle on why I'm getting this message...</p>
  
  <pre><code>int() argument must be a string or a number, not 'tuple'
  </code></pre>
  
  <p>on this line from my views.py (NOTE: Exception actually occurrs one level deeper inside django core, but this my line of code which eventually triggers the exception)...</p>
  
  <pre><code>service_interest = ServiceInterest.objects.get_or_create(service = service, client = client)
  </code></pre>
  
  <p><strong>Why am I getting this error?</strong>  For your benefit, see below models.py, a forms.py, and a snippet from views.py.</p>
  
  <p>models.py:</p>
  
  <pre><code>class Client(models.Model):
    name = models.CharField(max_length=100)
    email = models.EmailField()
    site = models.URLField()
    contact_date = models.DateField(default = datetime.date.today())
  
  class Service(models.Model):
    name = models.CharField(max_length=200)
  
  class ServiceInterest(models.Model):
    service = models.ForeignKey('Service')
    client = models.ForeignKey('Client')
  
    class Meta:
      unique_together = ("service", "client")
  </code></pre>
  
  <p>forms.py...</p>
  
  <pre><code>class ContactForm(forms.Form):
  
  
  SERVICE_CHOICES = (
      ('first_choice', 'Description of first choice'),
      ('second_choice', 'Description of second choice'),
      ('third_choice', 'Description of third choice'),
      ('other', 'Other')
    )
  
    SERVICE_CHOICES_DICT = dict(SERVICE_CHOICES)
  
    name = forms.CharField(label='What would you like us to call you?', max_length=200, required=False)
    email = forms.EmailField(label='What is your email address?', help_text='Ex: yourname@gmail.com')
    url = forms.URLField(label='If you have a website, please provide a link', required=False, help_text="Ex: www.yoursite.com")
    service_interest = forms.MultipleChoiceField(label="Please check all of the services you're interested in:", widget=forms.widgets.CheckboxSelectMultiple, choices=SERVICE_CHOICES, required=True)
    other = forms.CharField(label='If you selected \"Other\", please specify:', max_length=200, required=False)
    message = forms.CharField(max_length=10000, required=False, label='Any other information you think we should know?', widget=forms.widgets.Textarea)
  
    def clean_other(self):
      cleaned_data = super(ContactForm, self).clean()
      if 'service_interest' in cleaned_data.keys():
        options = cleaned_data['service_interest']
        if 'other' in options:
          other_input = cleaned_data['other']
          if other_input == None or len(other_input) == 0:
            raise forms.ValidationError('Required when \"Other\" is checked')
  
      return cleaned_data
  </code></pre>
  
  <p>relevent code from views.py:</p>
  
  <pre><code>  name = form.cleaned_data['name']
    email = form.cleaned_data['email']
    url = form.cleaned_data['url']
    interests = form.cleaned_data['service_interest']
    other = form.cleaned_data['other']
    message = form.cleaned_data['message']
  
    client = Client.objects.get_or_create(name = name, email = email, site = url)
    for interest in interests:
      service = None
      if(interest != 'other'):
        service = Service.objects.get_or_create(name = ContactForm.SERVICE_CHOICES_DICT[interest])
      else:
        service = Service.objects.get_or_create(name = other)
  
      # Appears to be responsible for the stack trace, even though exception
      # is one level deeper in...
      # /Library/Python/2.7/site-packages/django/core/handlers/base.py in get_response
      service_interest = ServiceInterest.objects.get_or_create(service = service, client = client)
  </code></pre>