如何解决如何在Django Admin中显示不带标签的ReadOnlyFields? 解决方案解决方案如何工作
我正在尝试在Django管理员ReadOnlyFields
中显示一些数据,但无法显示,我想在字段的同一行中显示emailid
和verify_emailid
,我可以使用fieldset
来做到这一点,但它还会显示标签,请让我知道如何在没有表的情况下显示数据。
这是我的admin.py
文件...
class MyModelAdmin(ReadOnlyAdminMixin,CustomModelAdmin):
fields = (('emailid','verify_emailid),'mobilenumber','type')
此处emailid
和verify_emailid
在同一行中显示,但是问题是verify_emailid
显示标签,我不希望verify_emailid
的标签,请让我知道如何删除verify_emailid
标签...
解决方法
如果要完全控制特定行的文本,可以添加一种方法来控制该行,然后将该方法添加为只读字段:
解决方案
from django.utils.html import format_html
class MyModelAdmin(ReadOnlyAdminMixin,CustomModelAdmin):
fields = ('my_custom_line','mobilenumber','type')
def my_custom_line(self,instance):
return format_html('<p>{} {}</p>',instance.emailid,instance.verify_emailid)
解决方案如何工作
ModelAdmin
类上的任何返回一些文本的方法都可以用作只读字段。您可以在the docs中了解有关此内容的更多信息。
format_html
只是插入html的一种安全方法,可以避免各种攻击。 html后面列出的值通常会插入到html中。您可以随时编辑此行以获得所需的效果。您可以了解有关here的信息。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。