Jam*_*mey 4 django django-admin
如果这太复杂或者不是正确的做事方式,请随时将我与其他事物联系起来或者告诉我我应该采取另一种方式......
基本上,我正在开发一个有客户端的项目,每个项目都附加了任意数量的网站.因此,网站模型对客户端模型具有ForeignKey.网站管理页面非常深入,每个客户可能有10个或更多网站,所以我宁愿不将它们全部显示为内联,因为这看起来非常混乱和疯狂.
我想要的是,当你进入管理面板并点击客户端时,你会被带到更改页面,在那里它有你为客户编辑的基本内容,然后内联实际链接到每个客户端.客户的网站管理页面.像这样:
名称:
地址:
电话:
链接编辑网站1
链接编辑网站2
链接编辑网站3
链接编辑网站4
链接编辑网站5
您可以使用TabularInline仅包含模型更改页面链接的链接:
class ClientAdmin(admin.ModelAdmin):
# everything as normal
inlines = WebsiteInline,
class WebsiteInline(admin.TabularInline):
model = Website
fields = 'link',
readonly_fields = 'link',
def link(self, instance):
url = reverse("admin:myapp_website_change", args = (instance.id,))
return mark_safe("<a href='%s'>%s</a>" % (url, unicode(instance)))
admin.site.register(Client, ClientAdmin)
admin.site.register(Website)
Run Code Online (Sandbox Code Playgroud)
请参阅我最近的问题如何将一个对象的Django管理页面中的链接添加到相关对象的管理页面?这是关于如何做到这一点,但有几对模型而不是一对.
| 归档时间: |
|
| 查看次数: |
1919 次 |
| 最近记录: |