首页 > 其他 > 详细

Django 注意知识点(一)

时间:2019-08-23 23:35:13      阅读:130      评论:0      收藏:0      [点我收藏+]

本篇概述

  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, index.html, context)

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

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

技术分享图片

 

Django 注意知识点(一)

原文:https://www.cnblogs.com/xmdykf/p/11403000.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!