多对多关联

models.py
#### 自关联
class User(models.Model):
	name = models.CharField(max_length=32)
	gender_list = [
		(1,'男'),
		(2,'女')
		]
gender = models.IntegerField(choices=gender_list, default=1)
m = models.ManyToManyField('User')  #关联自己


views.py:
#### 查询和zekai约会的姑娘
res = models.User.objects.filter(name='zekai', gender=1).first()
#print(res) ### obj
objs = res.m.all()
'''
1. select * from app01_user_m where  from_user_id = 1  ### to_user_id=[3,4]
2. select * from app01_user where id in (3,4)
'''
for obj in objs:
	print(obj.name)

#### 查询和cuihua约会的男生
res = models.User.objects.filter(name='cuihua', gender=2).first()
objs = res.user_set.all()
'''
1. select * from app01_user_m where  to_user_id = 3  ### from_user_id=[1,2]
2. select * from app01_user where id in (1,2) 
'''
for obj in objs:
	print(obj.name)

一对多

相关文章:

  • 2021-05-15
  • 2022-12-23
  • 2021-12-27
  • 2021-04-08
  • 2021-11-04
  • 2021-05-10
猜你喜欢
  • 2021-11-29
  • 2022-02-21
  • 2021-06-08
  • 2022-12-23
  • 2021-05-17
  • 2021-06-16
  • 2021-12-17
相关资源
相似解决方案