gpt4 book ai didi

python - MediaDefiningClass 对象不可迭代?

转载 作者:太空狗 更新时间:2023-10-30 01:28:24 26 4
gpt4 key购买 nike

尝试使用内联在管理仪表板上获得自定义 View 。下面是代码

from django.contrib import admin # noqa
from oscar.core.loading import get_model
from oscar.apps.catalogue.admin import *

CategoryAttribute = get_model('catalogue', 'CategoryAttribute')
CategoryAttributeValue = get_model('catalogue', 'CategoryAttributeValue')
Category = get_model('catalogue', 'Category')

class CategoryAttributeInline(admin.TabularInline):
model = CategoryAttributeValue
fk_name = 'category'
extra = 1

class CategoryAdmin(admin.ModelAdmin):
inlines = [CategoryAttributeInline,]

admin.site.register(CategoryAttributeValue)
admin.site.register(CategoryAttribute)
admin.site.register(Category, CategoryAdmin)

我得到的错误是TypeError: 'MediaDefiningClass' 对象不可迭代

我的代码有什么问题?

最佳答案

有时导致此错误的原因是按错误的顺序向寄存器函数发送参数。

查看ModelAdmin的注册顺序:先是模型类,再是ModelAdmin类。

示例:admin.site.register(Model, ModelAdmin)

我想自然而然地,第二个必须是 ModelAdmin,因为 register(MyModel) 也能正常工作。

关于python - MediaDefiningClass 对象不可迭代?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32077679/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com