我有一个这样的模型:
class UserAdress(models.Model):
user = models.ForeignKey(MyUser)
area = models.ForeignKey(Area)
在管理员中:
class UserAdressAdmin(models.Model):
list_display = ['user','area']
管理员列出了用户的所有区域。:
user1 area1
user1 area2
user2 area1
user2 area2
有没有办法像这样展示?
<a href='link to all user1 areas'>user 1</a>
<a href='link to all user2 areas'>user 2</a>
提前致谢
答案 0 :(得分:1)
您可能需要重新定义模型和关系 - 可能使用其他一些关系类型。所以你可以在管理模型中添加类似的东西(不是admin.ModelAdmin?):
class UserAddressAdmin(admin.ModelAdmin):
def user_areas(self, obj):
areas = Area.objects.filter(pk__in=UserAddress.objects.filter(user=obj.user).values("area__id"))
return "<a href='%s'>%s</a>" % (
reverse("reverse_to_areas"), obj.user.username)
user_link.allow_tags = True
list_display = ['user_areas','area']