Python全系列 教程
3567个小节阅读:5930.9k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
xxxxxxxxxx
#运行之前导入模块
from more_app.models import * #其中moremore_app是子应用名
p = Person.objects.create(first_name="刘", last_name="备")
# 或
p1 = Person(first_name="Bruce", last_name="Springsteen")
p1.save()
xxxxxxxxxx
from food_app.models import *
# 单表添加
p1 = Place.objects.create(name="北京",address="中华大街")
p2 = Place(name="保定",address="中心大街")
p2.save()
# 1对1添加
# 方法1
r1 = Restaurant.objects.create(name="肯德基",place=p1)
# 方法2
r2 = Restaurant(name="麦当劳")
r2.place=p2
r2.save()
# 1对多添加
# 方法1
w2 = Waiter.objects.create(name="吕小布",induction="2030-6-6",restaurant=r1)
# 方法2
w3 = Waiter(name="貂蝉",induction="2030-6-6")
w3.restaurant=r2
w3.save()
# 多对多添加
f1 = Food.objects.create(name="鸡腿汉堡")
f1.restaurant.set([1,2])
提示
多对多添加数据关系,不能使用属性名,需要使用: 属性名.set(),不然会报错如下:
TypeError: Direct assignment to the forward side of a many-to-many set is prohibited. Use restaurant.set() instead.
实时效果反馈
1. 关于Django模型, 增加数据说法错误的是?
A 增加数据有2种方法
B 1对多增加数据需要先有1方对象
C 多对多增加数据先增加实体,再设置关系
D 增加数据需要手动提交事务
答案
1=>D