<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -32,6 +32,8 @@ class TumbleItem(models.Model):
 
     # this is for magic later and makes doing lookups both easier and lazier.
     content_type = models.ForeignKey(ContentType, editable=False, null=True)
+    content_id = models.IntegerField(db_index=True, editable=False, null=True)
+    object = generic.GenericForeignKey(ct_field=&quot;content_type&quot;, fk_field=&quot;content_id&quot;)
 
     class Meta:
         ordering = ['-pub_date']
@@ -82,6 +84,10 @@ class Regular(TumbleItem):
                 self.tumblr_id = post['id']
         super(Regular, self).save()
 
+        if not self.content_id:
+            self.content_id = self.pk
+            super(Regular, self).save()
+
     def __unicode__(self):
         if self.title:
             return u&quot;%s (regular)&quot; % self.title
@@ -106,6 +112,10 @@ class Photo(TumbleItem):
                 self.tumblr_id = post['id']
         super(Photo, self).save()
 
+        if not self.content_id:
+            self.content_id = self.pk
+            super(Photo, self).save()
+
     def __unicode__(self):
         return u&quot;Photo&quot;
 
@@ -139,6 +149,10 @@ class Link(TumbleItem):
                 self.tumblr_id = post['id']
         super(Link, self).save()
 
+        if not self.content_id:
+            self.content_id = self.pk
+            super(Link, self).save()
+
     def __unicode__(self):
         if self.name:
             return u&quot;%s (link)&quot; % self.name
@@ -162,6 +176,10 @@ class Conversation(TumbleItem):
                 self.tumblr_id = post['id']
         super(Conversation, self).save()
 
+        if not self.content_id:
+            self.content_id = self.pk
+            super(Conversation, self).save()
+
         lines = self.conversation_text.split('\n')
         for line in lines:
             c = ConversationLine(conversation=self, line=line)
@@ -199,6 +217,10 @@ class Video(TumbleItem):
                 self.tumblr_id = post['id']
         super(Video, self).save()
 
+        if not self.content_id:
+            self.content_id = self.pk
+            super(Video, self).save()
+
     def __unicode__(self):
         return u&quot;Video&quot;
 
@@ -220,5 +242,9 @@ class Audio(TumbleItem):
                 self.tumblr_id = post['id']
         super(Audio, self).save()
 
+        if not self.content_id:
+            self.content_id = self.pk
+            super(Audio, self).save()
+
     def __unicode__(self):
         return u&quot;Audio&quot;</diff>
      <filename>djumblr/models.py</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>c97c3c564724b0d168a82b60e6852a78fd0b690b</id>
    </parent>
  </parents>
  <author>
    <name>Jeff Triplett</name>
    <email>jeff.triplett@gmail.com</email>
  </author>
  <url>http://github.com/jefftriplett/django-tumblr/commit/6ad1fcfaf3aa1aa940cb75483fedd18da3e589df</url>
  <id>6ad1fcfaf3aa1aa940cb75483fedd18da3e589df</id>
  <committed-date>2009-10-25T20:27:53-07:00</committed-date>
  <authored-date>2009-10-25T20:27:53-07:00</authored-date>
  <message>added a backwards reference back to the original model from a TumbleItem to make reverse lookups easier</message>
  <tree>c50e38280f599c9b93be28ebac779bf839c7c1cf</tree>
  <committer>
    <name>Jeff Triplett</name>
    <email>jeff.triplett@gmail.com</email>
  </committer>
</commit>
