当前位置: 移动技术网 > IT编程>脚本编程>Python > Django 注意知识点(一)

Django 注意知识点(一)

2019年08月24日  | 移动技术网IT编程  | 我要评论

布雷克格里芬,孟真近况,合川区人力资源和社会保障网

本篇概述

  django admin后台显示 多对多字段(如何)

  django 模板 显示 多对多字段(如何)

models代码背景

1 class tag(models.model):
2         name = models.charfield(max_length=20, verbose_name="名称")
3 
4 class work(models.model):
5         tag = models.manytomanyfield(tag, verbose_name="标签")

 

一,django admin后台显示 多对多字段

  于admin.py文件中

1 @admin.register(work)
2 class workadmin(admin.modeladmin):
3     '''展示tags'''
4     def show_tags(self, obj):
5         return [tag.name for tag in obj.tag.all()]
6          # 这里运用了python的堆导式
7     show_tags.short_description = "标签"  # 设置表头
8     list_display = ["show_tags"]

 

二,django 模板 显示 多对多字段

   先与 视图 views.py文件中

1 class indexview(view):
2     def get(self, request):
3         works = work.objects.all()[:2]
4 
5         context = {
6             'works': works,
7         }
8         return render(request, '', context)

  然后,(urls.py中的配置就不多说了,直接进如何在模板中取得)

1 {% for work in works %}
2       {% for tag in work.tag.all %}
3              {# 下面即 该作品对应的标签 #}
4                    {{tag.name}}  
5        {% endfor %}
6 {% endfor%}    

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网