链接到django admin到外键对象 [英] Link in django admin to foreign key object
本文介绍了链接到django admin到外键对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在Django管理员中,我如何添加一个链接在模型A的管理页面旁边打开模型的管理页面的ForeignKey字段旁边B?
解决方案
您可以执行以下操作:
py(示例):
模型B(models.Model):
name = models.CharField(max_length = 20 )
模型A(models.Model):
field1 = models.CharField(max_length = 20)
Bkey = models.ForeignKey(B)
admin.py
from django.core import urlresolvers
class AAdmin(admin.ModelAdmin):
list_display = [field1,link_to_B]
def link_to_B(self,obj):
link = urlresolvers.reverse(admin:yourapp_b_change,args = [obj.B.id])#model name必须为小写
return u'< a href =%s>% s< / a>'%(link,obj.B.name)
link_to_B.allow_tags = True
将yourapp替换为您的应用程序的名称。
I have a model A with a ForeignKey to a model B. In Django admin, how can I add a link in the admin page of model A next to the ForeignKey field which open the admin page of the model B ?
解决方案
You can do the following:
models.py (example):
model B(models.Model):
name = models.CharField(max_length=20)
model A(models.Model):
field1 = models.CharField(max_length=20)
Bkey = models.ForeignKey(B)
admin.py
from django.core import urlresolvers
class AAdmin(admin.ModelAdmin):
list_display = ["field1","link_to_B"]
def link_to_B(self, obj):
link=urlresolvers.reverse("admin:yourapp_b_change", args=[obj.B.id]) #model name has to be lowercase
return u'<a href="%s">%s</a>' % (link,obj.B.name)
link_to_B.allow_tags=True
Replace yourapp with the name of your app.
这篇关于链接到django admin到外键对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文