def the_callable(obj):
return u'<a href="#">link from the callable for {0}</a>'.format(obj)
the_callable.allow_tags = True
class SomeAdmin(admin.ModelAdmin):
def the_method_in_modeladmin(self, obj):
return u'<a href="#">link from the method of modeladmin for {0}</a>'.format(obj)
the_method_in_modeladmin.allow_tags = True
readonly_fields = (the_callable, 'the_method_in_modeladmin', 'the_callable_on_object')
ObjModel.the_callable_on_object = lambda self, obj: u'<a href="#">link from the callable of the instance </a>'.format(obj)
ObjModel.the_callable_on_object.__func__.allow_tags = True
4条答案
按热度按时间aiqt4smr1#
老问题了,但还是值得回答。
参考文档,
readonly_fields
现在也支持这些定制方式,工作原理和the link在评论中发布的一样:然后,上面的代码将在其变更表单页面中呈现三个只读字段。
cig3rfwq2#
更新后的答案可在this post中找到。
它使用
format_html
实用程序,因为allow_tags
已被弃用。另外,ModelAdmin.readonly_fields的文档也非常有用。
bvuwiixz3#
我按照okm提供的链接,我设法在更改表单页面中包含一个可点击的链接。
我的解决方案(添加到admin.ModelAdmin,而不是models.model)
cx6n0qe34#
在www.example.com中admin.py