- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
在 Django 管理中,我可以使用 GenericTabularInline 内联显示通用关系的反转.这行得通....
class Art(TimeDateStampedModel):
collections = GenericRelation('apps.Collection')
admin.py
class CollectionsInline(GenericTabularInline):
model = Collection
class ArtAdmin(admin.ModelAdmin):
inlines = [
CollectionsInline,
MediaActivityInline,
]
但它只允许我添加新的集合或更新已经相关的集合。 如何从 Art
中搜索/选择或挑选现有的Collection
。
我已经尝试在 Art this 上使用 GenericRelation
但它不起作用:
class ArtAdmin(admin.ModelAdmin):
fieldsets = (
('', {
'fields': ('collections'),
}),
)
最佳答案
您当前在Collection
模型中有一个通用外键。听起来这不是您想要的,因为您希望能够将每个 collection
分配给多个外部对象。
您可以尝试创建一个模型,例如CollectionMember
(不是一个好名字),带有一个集合外键和一个通用外键。
class CollectionMember(models.Model):
"""
Allows collections to be assigned to multiple external
objects using a generic foreign key
"""
collection = models.ForeignKey(Collection)
content_type = models.ForeignKey(ContentType)
object_id = models.PositiveIntegerField()
content_object = GenericForeignKey('content_type', 'object_id')
在您的 ArtAdmin
中将 CollectionMember 作为通用内联添加,然后您将能够为每个内联 collection_member
选择集合。
关于python - 在 Django Admin 中使用 GenericTabularInline 查找现有集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32993597/
我一直在尝试通过从 GenericTabularInline 类继承并覆盖 BaseModelAdmin 类中的一些方法,使 GenericTabularInline 类在双管理员双数据库设置中工作,
我刚刚将我的一个模型转换为使用通用外键。该模型与这些一起正常工作,数据库报告正确的值,并且我拥有的 API 与零更改的新外键完美配合(保持相同的字段名称)。 但是,管理员完全失败了。 Inline 没
在 Django 管理中,我可以使用 GenericTabularInline 内联显示通用关系的反转.这行得通.... class Art(TimeDateStampedModel):
我试图让一个带有通用外键的模型 (Prereq) 出现在 MyModel 的管理员中。 模型.py: class MyModel(models.Model): name = models.Ch
我是一名优秀的程序员,十分优秀!