Django 多表关联 存储 使用方法详解 ManyToManyField save


Posted in Python onAugust 09, 2019

当models中使用ManyToManyField进行多表关联的时候,需要使用字段的add()方法来增加关联关系的一条记录,让两个实例关联起来才能顺利保存关联关系

#models.py 问题分类question_category和类别使用了多对多关系(先不管是否合理)
#coding:utf-8
from django.db import models

# Create your models here.

class QuestionCategory(models.Model):
 category_name = models.CharField('问题分类',max_length=50)

 def __unicode__(self):
 return self.category_name


class Question(models.Model):
 question_category = models.ManyToManyField(QuestionCategory,verbose_name="归属分类")
 question_title = models.CharField('标题', max_length=50)
 question_author = models.ForeignKey('auth.User', blank=True, null=True,verbose_name='作者')
 question_keywords = models.CharField('关键词',max_length=20)
 question_date = models.DateTimeField('date published')
 question_text = models.CharField('正文内容', max_length=200)

 def __unicode__(self):
 return self.question_title
#QuestionCategory.objects.get生成一个类别实例
#request.POST从前端获取表单提交的数据后,凑到Question里面形成一个问题实例
#先把问题实例存好,再在问题实例的多对多关联字段question_category上添加关联对象joe这个类别实例,关联好之后再save第二遍,查看数据库里面关联关系就存好了
def ask_question(request):

 question_category_name = request.POST['radio']
 question_title = request.POST['question_title']
 question_keywords = request.POST['question_keywords']
 question_text = request.POST['question_content']
 question_date = datetime.datetime.now()
 question_author = request.user
 joe = QuestionCategory.objects.get(category_name=question_category_name)
 print joe
 qqqq = Question(question_title=question_title,question_keywords=question_keywords,question_date=question_date,question_text=question_text,question_author=question_author)
 qqqq.save()
 qqqq.question_category.add(joe)
 qqqq.save()

 return redirect('pythonnav:index')

django ManyToManyField多对多关系的实例详解:

以上这篇Django 多表关联 存储 使用方法详解 ManyToManyField save就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python网络编程之UDP通信实例(含服务器端、客户端、UDP广播例子)
Apr 25 Python
《Python之禅》中对于Python编程过程中的一些建议
Apr 03 Python
在Python中使用matplotlib模块绘制数据图的示例
May 04 Python
python中while循环语句用法简单实例
May 07 Python
python 简单的多线程链接实现代码
Aug 28 Python
Linux下Pycharm、Anaconda环境配置及使用踩坑
Dec 19 Python
pyhanlp安装介绍和简单应用
Feb 22 Python
详解Python中的各种转义符\n\r\t
Jul 10 Python
使用pytorch搭建AlexNet操作(微调预训练模型及手动搭建)
Jan 18 Python
解决Django提交表单报错:CSRF token missing or incorrect的问题
Mar 13 Python
浅析python 动态库m.so.1.0错误问题
May 09 Python
PyQt5 显示超清高分辨率图片的方法
Apr 11 Python
ORM Django 终端打印 SQL 语句实现解析
Aug 09 #Python
python实现读取excel文件中所有sheet操作示例
Aug 09 #Python
django ManyToManyField多对多关系的实例详解
Aug 09 #Python
python虚拟环境的安装和配置(virtualenv,virtualenvwrapper)
Aug 09 #Python
python实现比对美团接口返回数据和本地mongo数据是否一致示例
Aug 09 #Python
对django2.0 关联表的必填on_delete参数的含义解析
Aug 09 #Python
python实现美团订单推送到测试环境,提供便利操作示例
Aug 09 #Python
You might like
php实现与python进行socket通信的方法示例
2017/08/30 PHP
实例介绍PHP中zip_open()函数用法
2019/02/15 PHP
Laravel框架使用技巧之使用url()全局函数返回前一个页面的地址方法详解
2020/04/06 PHP
jquery 实现的全选和反选
2009/04/15 Javascript
判断浏览器的javascript版本的代码
2010/09/03 Javascript
使用js画图之饼图
2015/01/12 Javascript
倾力总结40条常见的移动端Web页面问题解决方案
2016/05/24 Javascript
AngularJS表格添加序号的方法
2017/03/03 Javascript
vue.js-div滚动条隐藏但有滚动效果的实现方法
2018/03/03 Javascript
Angular设置别名alias的方法
2018/11/08 Javascript
vue实现下拉加载其实没那么复杂
2019/08/13 Javascript
微信小程序中的上拉、下拉菜单功能
2020/03/13 Javascript
[46:27]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#2LGD VS MVP.Phx第一局
2016/03/02 DOTA
Python使用正则表达式获取网页中所需要的信息
2018/01/29 Python
基于DATAFRAME中元素的读取与修改方法
2018/06/08 Python
打包python 加icon 去掉cmd黑窗口方法
2019/06/24 Python
使用Python代码实现Linux中的ls遍历目录命令的实例代码
2019/09/07 Python
mac 上配置Pycharm连接远程服务器并实现使用远程服务器Python解释器的方法
2020/03/19 Python
Python基于pip实现离线打包过程详解
2020/05/15 Python
tensorflow 20:搭网络,导出模型,运行模型的实例
2020/05/26 Python
html5图片上传预览示例分享
2014/04/14 HTML / CSS
HTML5所有标签汇总及标签意义解释
2015/03/12 HTML / CSS
canvas学习总结三之绘制路径-线段
2019/01/31 HTML / CSS
澳大利亚运动鞋零售商:The Athlete’s Foot
2018/11/04 全球购物
师范毕业生自荐信
2013/10/17 职场文书
护理专业求职信
2014/06/15 职场文书
公安学专业求职信
2014/07/27 职场文书
公证委托书
2014/08/01 职场文书
离职报告格式
2014/11/04 职场文书
支行行长竞聘报告
2014/11/06 职场文书
投标邀请书范本
2015/02/02 职场文书
继续教育个人总结
2015/03/03 职场文书
关于空气污染危害的感想
2015/08/11 职场文书
学困生转化工作总结
2015/08/13 职场文书
廉政党课工作报告案例
2019/06/21 职场文书
Python读取文件夹下的所有文件实例代码
2021/04/02 Python