7.24-7.26 JLL实习日志-Django UI Modification
来源:互联网 发布:js php 加密 编辑:程序博客网 时间:2024/06/16 00:32
- ManyToMany 模型
数据模型如下 ,Brand 在 model中 定义 了 一个Company_Group
属性 ,显性显示 了对应 的 company的 组群 ,Company 模型 中 隐形定义了关系
class Brand(models.Model): Company_Group = models.ManyToManyField(Company) Brand_Group = models.CharField(u'Brand Group',max_length=255, default="")
class Company(models.Model): Pref_Company_Name_Flg = models.CharField(u'Preferred Name Flag',max_length=255, default="") Pref_Company_Name = models.CharField(u'Preferred Name',max_length=255, default="") Company_Type = models.CharField(u'Company Type',max_length=255, default="") Company_Name = models.CharField(u'Company Name',max_length=255, default="")
View 端 分为 两种 方式,由 Brand_id得到 所在 的 company_group ,或者 是 由 company_id 得到 Brand_group 两种 方式
第一种 方式 ,Company_Group
可以 直接使用 ,有对应 的 针对 company_instance
对象 DESC的操作,显示 Company_Group
的 id需要 使用 Company_Group__id
的 方式 ,里面 有 两种 过滤 方式 __exact
表示 精确匹配 ,__icontains
表示 的 是 模糊 匹配,
instance_id = request.GET.get('company_id')company_instance=get_object_or_404(Company,pk=int(instance_id)) brand_instance.Company_Group.add(company_instance)brand_instance.Company_Group.remove(company_instance)brand_instance.save()
第二种 方式 _set.all()
的方式 ,得到 Brand_instance
的对象 ,隐式 得到 显示 的 方式 ,因为 Company没有 类似brand_group
company_instance = Company.objects.get(id=company_id)brand_instances=company_instance.brand_set.all()
第三种表示的 使用 过滤的 形式,注意 在 ORM 中 Brand
,Company
模型 没有 明确 定义 id
的 属性 ,使用 __id
的 方式 拿到
###############################brand_instances= Brand.objects.filter(Company_Group__id__exact=company_instance.id)##############################conversations=Conversation_Brand.objects.filter(Brand__id__icontains =id_list).order_by('-Created_On')
阅读全文
0 0
- 7.24-7.26 JLL实习日志-Django UI Modification
- 7.24-7.26 JLL实习日志-ajax+RestfulApi+Django-未完改进
- 5.3 JLL 实习日志
- 5.5 JLL 实习日志
- 5.9 JLL实习日志
- 5.27 JLL--实习日志--
- 6.5 JLL--实习日志
- 6.16-6.19 JLL--实习日志--
- 5.26 JLL--实习日志--Primary_Image+total_setting
- 6.15 JLL--实习日志--SetupNewWorkSpace on cloud9
- 7.14-7.21 JLL实习日志-DropDownBox Upgrade
- 8.29-8.30 JLL实习日志-validate deprecated
- 9.1-9. JLL实习日志-未完结
- 5.4 JLL 实习日志 –form 表单问题
- 5.11 JLL实习日志-实现download功能实现
- 5.10 JLL实习日志-实现upload 功能实现
- 5.12 JLL实习日志-实现download功能实现
- 5.12 JLL实习日志-实现Anjular Js 功能实现
- Android 项目 复制
- iOS UITextField Delegate详解
- Spring boot 的打包和运行
- 模板引擎使用包括if判断
- node.js学习之创建HTTP服务器
- 7.24-7.26 JLL实习日志-Django UI Modification
- HttpClient4.5入门实例教程
- Android View 事件分发机制 源码解析 (上)
- JS中some(),every(),forEach(),map(),filter()区别
- 软件设计中的心跳机制
- 环境变量,Path,和软件安装目录
- 详解html和thymeleaf中的相对路径,解决springboot前台页面的相对路径问题
- MySQL必知必会笔记(四)存储过程 游标 触发器
- leetcode 377. Combination Sum IV