<p>您没有正确设置泛型关系。阅读<a href="http://docs.djangoproject.com/en/dev/ref/contrib/contenttypes/#id1" rel="nofollow noreferrer">documentation</a>:</p>
<blockquote>
<p>There are three parts to setting up a GenericForeignKey:</p>
<ol>
<li>Give your model a <code>ForeignKey</code> to <code>ContentType</code>. </li>
<li>Give your model a field that can store a primary-key value from the models you'll be relating to. (For most models, this means an <code>IntegerField</code> or <code>PositiveIntegerField</code>.)<br/>
This field must be of the same type as the primary key of the models that will be involved in the generic relation. For example, if you use IntegerField, you won't be able to form a generic relation with a model that uses a CharField as a primary key.</li>
<li>Give your model a <code>GenericForeignKey</code>, and pass it the names of the two fields described above. If these fields are named "content_type" and "object_id", you can omit this those are the default field names <code>GenericForeignKey</code> will look for.</li>
</ol>
</blockquote>
<p>最后,它一定是这样的:</p>
<pre><code>content_type = models.ForeignKey(ContentType)
object_id = models.PositiveIntegerField()
content_object = generic.GenericForeignKey('content_type', 'object_id')
</code></pre>