title: get extra field value in Django's many-to-many relationship
body: <p>In Django's many-to-many relationships extra fields, we can add extra fields, as the code below (from  <a href="https://docs.djangoproject.com/en/dev/topics/db/models/#intermediary-manytomany" rel="nofollow">https://docs.djangoproject.com/en/dev/topics/db/models/#intermediary-manytomany</a>), my question is how could I get the extra field easily, is it possible to not query on the intermediary table directly? the exactly example is:</p>
  
  <pre><code>&gt;&gt;&gt; ringo = Person.objects.create(name="Ringo Starr")
  &gt;&gt;&gt; paul = Person.objects.create(name="Paul McCartney")
  &gt;&gt;&gt; beatles = Group.objects.create(name="The Beatles")
  &gt;&gt;&gt; m1 = Membership(person=ringo, group=beatles,
  ...     date_joined=date(1962, 8, 16),
  ...     invite_reason="Needed a new drummer.")
  &gt;&gt;&gt; m1.save()
  &gt;&gt;&gt; beatles.members.all()
  [&lt;Person: Ringo Starr&gt;]
  
  &gt;&gt;&gt; p = beatles.members.all()[0]
  &gt;&gt;&gt; p
  [&lt;Person: Ringo Starr&gt;]
  </code></pre>
  
  <p>I want to get the date_joined value of p, I know it can be done by</p>
  
  <pre><code>&gt;&gt;&gt; Membership.objects.get(person=p, group=beatles).date_joined
  datetime.date(1962, 8, 16)
  </code></pre>
  
  <p>but is it possible to get it simply just like:</p>
  
  <pre><code>&gt;&gt;&gt; p.xxx(*args)
  </code></pre>
  
  <p>=============== models.py ================</p>
  
  <pre><code>from django.db import models
  
  class Person(models.Model):
      name = models.CharField(max_length=128)
  
      def __str__(self):              # __unicode__ on Python 2
          return self.name
  
  class Group(models.Model):
      name = models.CharField(max_length=128)
      members = models.ManyToManyField(Person, through='Membership')
  
      def __str__(self):              # __unicode__ on Python 2
          return self.name
  
  class Membership(models.Model):
      person = models.ForeignKey(Person)
      group = models.ForeignKey(Group)
      date_joined = models.DateField()
      invite_reason = models.CharField(max_length=64)
  </code></pre>