如何在 Django 管理面板中添加自定义 link/url 字段?
How to add a customized link/url field in Django admin panel?
在 Django admin.py 中,如何将自定义 link/url 字段 download_pdf 添加到管理视图中?
class CustomerAdmin(admin.ModelAdmin):
list_display = ['first_name', 'last_name', 'full_name', 'download_pdf']
def full_name(self, obj):
return obj.first_name + " " + obj.last_name
def download_pdf(self, obj):
return "<a href=''>PDF</a>" # this is not working
以上代码无效,download_pdf 字段显示为文本而不是 link。
使用format_html(...)
--(Django doc)函数
from django.utils.html import format_html
class CustomerAdmin(admin.ModelAdmin):
list_display = ['first_name', 'last_name', 'full_name', 'download_pdf']
def full_name(self, obj):
return obj.first_name + " " + obj.last_name
def download_pdf(self, obj):
<b>return format_html("<a href=''>PDF")</b>
示例:
def download_pdf(self, obj):
return format_html(f"<a href='/foo/bar/{obj.pk}/download-pdf/'>PDF</a>")
在 Django admin.py 中,如何将自定义 link/url 字段 download_pdf 添加到管理视图中?
class CustomerAdmin(admin.ModelAdmin):
list_display = ['first_name', 'last_name', 'full_name', 'download_pdf']
def full_name(self, obj):
return obj.first_name + " " + obj.last_name
def download_pdf(self, obj):
return "<a href=''>PDF</a>" # this is not working
以上代码无效,download_pdf 字段显示为文本而不是 link。
使用format_html(...)
--(Django doc)函数
from django.utils.html import format_html
class CustomerAdmin(admin.ModelAdmin):
list_display = ['first_name', 'last_name', 'full_name', 'download_pdf']
def full_name(self, obj):
return obj.first_name + " " + obj.last_name
def download_pdf(self, obj):
<b>return format_html("<a href=''>PDF")</b>
示例:
def download_pdf(self, obj):
return format_html(f"<a href='/foo/bar/{obj.pk}/download-pdf/'>PDF</a>")