我的模特为
class Employer(models.Model):
create_user = models.ForeignKey(User,unique=False,null=True, related_name='%(class)s_user_create')
update_user = models.ForeignKey(User,unique=False,null=True, related_name='%(class)s_user_update')
我想在Django管理面板中查看用户的详细信息时列出所有Employer
个对象。
我写过类似
的内容admin.py
class EmployerInline(admin.TabularInline):
model = Employer
class UserAdmin(admin.ModelAdmin):
inlines = [
EmployerInline
]
admin.site.register(UserAdmin)
但它给我的错误为'MediaDefiningClass' object is not iterable
如何在查找用户详细信息时列出由特定用户创建的雇主?
由于
答案 0 :(得分:11)
您提到的特定错误似乎与您的代码中发生的事情没有任何关系,所以我对此并不确定。但是,您在此处有其他错误,因此可能会修复这些错误也会解决该错误。
首先,您需要在fk_name
上指定EmployerInline
。 Django在大多数情况下自动解析外键,但由于你有两个外键到同一个模型,你必须给Django一些帮助。
class EmployerInline(admin.TabularInline):
model = Employer
fk_name = 'create_user'
其次,您可能刚刚省略了它,但在注册之前必须取消注册User
。您还需要在注册时指定模型:
admin.site.unregister(User)
admin.site.register(User, UserAdmin)