无法在django 1.8.4中使用GenericForeignKey

57hvy0tb  于 2023-06-25  发布在  Go
关注(0)|答案(1)|浏览(107)

我有以下模型,

class Book:
    title = model.CharField(...)

class Article:
    title = model.CharField(...)

class Rating:
    content_type = models.ForeignKey(ContentType, blank=True, null=True)
    object_id = models.PositiveIntegerField()
    node = GenericForeignKey('content_type', 'object_id')

其中Rating可以包含书籍或文章。
我希望django admin显示一个表单来编辑评级,并给予用户一个选择字段来选择他是否想添加文章或新闻,而不是content-type或object-id,这样用户就可以在一个表单中添加书籍或文章。
我试着使用GenericTabularInline,但我希望用户(管理员)有一个选择字段,以选择他是否要添加文章或书籍,并相应地改变形式。

ftf50wuq

ftf50wuq1#

是的,你可以使用。但只是进口

from django.contrib.contenttypes import generic

然后代替

node = GenericForeignKey('content_type', 'object_id')

使用

node = generic.GenericForeignKey('content_type', 'object_id')

相关问题