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获取本机外网ip的方法
Apr 15 Python
一个基于flask的web应用诞生 flask和mysql相连(4)
Apr 11 Python
Python 3实战爬虫之爬取京东图书的图片详解
Oct 09 Python
python给微信好友定时推送消息的示例
Feb 20 Python
对python3.4 字符串转16进制的实例详解
Jun 12 Python
在django中,关于session的通用设置方法
Aug 06 Python
Python协程操作之gevent(yield阻塞,greenlet),协程实现多任务(有规律的交替协作执行)用法详解
Oct 14 Python
python循环嵌套的多种使用方法解析
Nov 29 Python
解决pyecharts运行后产生的html文件用浏览器打开空白
Mar 11 Python
python 如何调用远程接口
Sep 11 Python
利用Python实现模拟登录知乎
May 25 Python
python pandas 解析(读取、写入)CSV 文件的操作方法
Dec 24 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编写和读取XML的几种方式
2013/01/12 PHP
php绘制一个扇形的方法
2015/01/24 PHP
PHP获取数组长度或某个值出现次数的方法
2015/02/11 PHP
php实现的mongodb操作类实例
2015/04/03 PHP
PHP7安装Redis扩展教程【Linux与Windows平台】
2016/09/30 PHP
通过PHP实现用户注册后邮箱验证激活
2020/11/10 PHP
jQuery布局插件UI Layout简介及使用方法
2013/04/03 Javascript
jquery将一个表单序列化为一个对象的方法
2013/12/02 Javascript
JQuery插件Marquee.js实现无缝滚动效果
2016/04/26 Javascript
jQuery四种选择器使用及示例
2016/06/05 Javascript
jQuery Ajax 加载数据时异步显示加载动画
2016/08/01 Javascript
微信小程序(三):网络请求
2017/01/13 Javascript
HTML的select控件美化
2017/03/27 Javascript
es6学习笔记之Async函数的使用示例
2017/05/11 Javascript
vue实现百度搜索下拉提示功能实例
2017/06/14 Javascript
详解服务端预渲染之Nuxt(介绍篇)
2019/04/07 Javascript
微信小程序如何获取群聊的openGid以及名称详解
2019/07/17 Javascript
uni-app使用countdown插件实现倒计时
2020/11/01 Javascript
python33 urllib2使用方法细节讲解
2013/12/03 Python
python将unicode转为str的方法
2017/06/21 Python
python实现感知器算法详解
2017/12/19 Python
Python使用tkinter库实现文本显示用户输入功能示例
2018/05/30 Python
Python3.0中普通方法、类方法和静态方法的比较
2019/05/03 Python
PyTorch中Tensor的维度变换实现
2019/08/18 Python
Python Sphinx使用实例及问题解决
2020/01/17 Python
python词云库wordcloud的使用方法与实例详解
2020/02/17 Python
详解使用python3.7配置开发钉钉群自定义机器人(2020年新版攻略)
2020/04/01 Python
Tensorflow安装问题: Could not find a version that satisfies the requirement tensorflow
2020/04/20 Python
python能开发游戏吗
2020/06/11 Python
车祸赔偿收入证明
2014/01/09 职场文书
奶茶店创业计划书范文
2014/01/17 职场文书
毕业生求职自荐书范文
2014/03/27 职场文书
本科生导师推荐信范文
2014/05/18 职场文书
小学爱国卫生月活动总结
2014/06/30 职场文书
国际贸易毕业生求职信
2014/07/20 职场文书
nginx 多个location转发任意请求或访问静态资源文件的实现
2021/03/31 Servers