我在models.py文件中使用了以下代码:
创建指向foreignkey的超链接
class ModelAdminWithForeignKeyLinksMetaclass(MediaDefiningClass):
def __getattr__(cls, name):
def foreign_key_link(instance, field):
target = getattr(instance, field)
return u'<a href="../../%s/%s/%s">%s</a>' % (
target._meta.app_label, target._meta.module_name, target.id, unicode(target))
if name[:8] == 'link_to_':
method = partial(foreign_key_link, field=name[8:])
method.__name__ = name[8:]
method.allow_tags = True
setattr(cls, name, method)
return getattr(cls, name)
raise AttributeError
Run Code Online (Sandbox Code Playgroud)
在admin.py list_display中,我已将link_to添加到我想要外键链接的每个字段的开头.这非常有效,但是当我关闭调试时,我得到一个属性错误.有什么建议?