Python 如果使用预取相关django,则清空M2M数据
我将Django与DRF一起使用,我遇到了一个N+1问题。所以,我现在尝试使用预回迁,但我有一些问题。在任何情况下,预取_相关返回空queryset 我正在使用:Python 如果使用预取相关django,则清空M2M数据,python,django,django-rest-framework,djongo,Python,Django,Django Rest Framework,Djongo,我将Django与DRF一起使用,我遇到了一个N+1问题。所以,我现在尝试使用预回迁,但我有一些问题。在任何情况下,预取_相关返回空queryset 我正在使用: Django 3.0.7 Djongo(MongoDB的Django DB后端) DRF(最新版本) 我试图将我的项目切换到MySQL上,但没有效果 DRF测试查询 @api_视图(['GET']) @权限\u类([AllowAny]) def测试预取(请求): users=User.objects.prefetch_related(
DRF测试查询
@api_视图(['GET'])
@权限\u类([AllowAny])
def测试预取(请求):
users=User.objects.prefetch_related('roles')。filter(id=4)#id=4拥有角色的是我的帐户
打印(用户[0].roles.all())#返回[]
打印(用户[0]。_预取_对象_缓存)#返回{“角色”:[]}
返回响应(123,状态=200)
模型
类用户角色(models.Model):
user=models.ForeignKey(to=“user”,on\u delete=models.DO\u NOTHING,default=None)
角色类型=models.CharField(默认为“”,最大长度=256)
给定的\u at=models.DateTimeField(默认值=api.functions.get\u local\u time)
expires\u at=models.DateTimeField(默认值=api.functions.get\u local\u time,null=True)
定义(自我):
返回self.role\u类型
类用户(AbstractBaseUser,PermissionsMixin):
....
roles=models.ManyToManyField(UserRoles,symmetric=True)
已修复。问题出在琼戈。我把我的项目切换到PostgreSQL上,现在可以运行了