Django 多表關(guān)聯(lián) 存儲(chǔ) 使用方法詳解 ManyToManyField save
當(dāng)models中使用ManyToManyField進(jìn)行多表關(guān)聯(lián)的時(shí)候,需要使用字段的add()方法來(lái)增加關(guān)聯(lián)關(guān)系的一條記錄,讓兩個(gè)實(shí)例關(guān)聯(lián)起來(lái)才能順利保存關(guān)聯(lián)關(guān)系
#models.py 問(wèn)題分類(lèi)question_category和類(lèi)別使用了多對(duì)多關(guān)系(先不管是否合理)
#coding:utf-8
from django.db import models
# Create your models here.
class QuestionCategory(models.Model):
category_name = models.CharField('問(wèn)題分類(lèi)',max_length=50)
def __unicode__(self):
return self.category_name
class Question(models.Model):
question_category = models.ManyToManyField(QuestionCategory,verbose_name="歸屬分類(lèi)")
question_title = models.CharField('標(biāo)題', max_length=50)
question_author = models.ForeignKey('auth.User', blank=True, null=True,verbose_name='作者')
question_keywords = models.CharField('關(guān)鍵詞',max_length=20)
question_date = models.DateTimeField('date published')
question_text = models.CharField('正文內(nèi)容', max_length=200)
def __unicode__(self):
return self.question_title
#QuestionCategory.objects.get生成一個(gè)類(lèi)別實(shí)例
#request.POST從前端獲取表單提交的數(shù)據(jù)后,湊到Question里面形成一個(gè)問(wèn)題實(shí)例
#先把問(wèn)題實(shí)例存好,再在問(wèn)題實(shí)例的多對(duì)多關(guān)聯(lián)字段question_category上添加關(guān)聯(lián)對(duì)象joe這個(gè)類(lèi)別實(shí)例,關(guān)聯(lián)好之后再save第二遍,查看數(shù)據(jù)庫(kù)里面關(guān)聯(lián)關(guān)系就存好了
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多對(duì)多關(guān)系的實(shí)例詳解:
http://m.fzitv.net/article/167289.htm
以上這篇Django 多表關(guān)聯(lián) 存儲(chǔ) 使用方法詳解 ManyToManyField save就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python實(shí)現(xiàn)文本進(jìn)度條 程序進(jìn)度條 加載進(jìn)度條 單行刷新功能
這篇文章主要介紹了python實(shí)現(xiàn)文本進(jìn)度條 程序進(jìn)度條 加載進(jìn)度條 單行刷新功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-07-07
Pytorch中關(guān)于F.normalize計(jì)算理解
這篇文章主要介紹了Pytorch中關(guān)于F.normalize計(jì)算理解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02
淺析Python中正則表達(dá)式函數(shù)search()和match()的使用
在Python中,正則表達(dá)式是處理字符串的強(qiáng)大工具,search()和match()是Python標(biāo)準(zhǔn)庫(kù)中re模塊中兩個(gè)常用的正則表達(dá)式方法,本文將詳細(xì)講解這兩個(gè)方法的使用,需要的可以參考一下2023-08-08
Django media static外部訪(fǎng)問(wèn)Django中的圖片設(shè)置教程
這篇文章主要介紹了Django media static外部訪(fǎng)問(wèn)Django中的圖片設(shè)置教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-04-04
Python數(shù)據(jù)分析之?Matplotlib?折線(xiàn)圖繪制
這篇文章主要介紹了Python數(shù)據(jù)分析之?Matplotlib?折線(xiàn)圖繪制,在數(shù)據(jù)分析中,數(shù)據(jù)可視化也非常重要,下文通過(guò)數(shù)據(jù)分析展開(kāi)對(duì)折線(xiàn)圖的繪制,需要的小伙伴可以參考一下2022-05-05
python基于機(jī)器學(xué)習(xí)預(yù)測(cè)股票交易信號(hào)
近年來(lái),隨著技術(shù)的發(fā)展,機(jī)器學(xué)習(xí)和深度學(xué)習(xí)在金融資產(chǎn)量化研究上的應(yīng)用越來(lái)越廣泛和深入。目前,大量數(shù)據(jù)科學(xué)家在Kaggle網(wǎng)站上發(fā)布了使用機(jī)器學(xué)習(xí)/深度學(xué)習(xí)模型對(duì)股票、期貨、比特幣等金融資產(chǎn)做預(yù)測(cè)和分析的文章。本文就來(lái)看看如何用python預(yù)測(cè)股票交易信號(hào)2021-05-05
卸載所有通過(guò)pip安裝的Python包的方法總結(jié)(Windows系統(tǒng))
這篇文章主要介紹了卸載所有通過(guò)pip安裝的Python包的方法總結(jié)(Windows系統(tǒng)),文中通過(guò)代碼示例和圖文講解的非常詳細(xì),并具有一定的參考價(jià)值,需要的朋友可以參考下2024-08-08
Python3爬蟲(chóng)中識(shí)別圖形驗(yàn)證碼的實(shí)例講解
在本篇內(nèi)容里小編給大家分享的是關(guān)于Python3爬蟲(chóng)中識(shí)別圖形驗(yàn)證碼的實(shí)例講解內(nèi)容,需要的朋友們可以學(xué)習(xí)參考下。2020-07-07
Python實(shí)現(xiàn)將Word表格嵌入到Excel中
把Word中的表格轉(zhuǎn)到Excel中,順便做一個(gè)調(diào)整。這個(gè)需求在實(shí)際工作中,很多人還是經(jīng)常碰到的!本文就將介紹如何利用Python實(shí)現(xiàn)這一功能,需要的朋友可以了解一下2021-12-12

