Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何查询具有相关\u名称的M2M_Python_Django_Many To Many - Fatal编程技术网

Python 如何查询具有相关\u名称的M2M

Python 如何查询具有相关\u名称的M2M,python,django,many-to-many,Python,Django,Many To Many,我有两个非常相似的M2M字段模型,不知怎的,我试图查询其中一个工作得很好,但当我尝试与另一个相同的代码时,它会给我错误。我能找到的唯一区别是相关的\u名称 我找到了一个解决办法,但我仍然很好奇,如果我下次遇到同样的问题,我如何才能让这个工作 (我只写了我拥有的M2M字段,每个模型只有一个M2M字段,即使想起来,如果有多个M2M,该怎么办,但这是不可能的) 这是我的工作模式 class Team(View): members = models.ManyToManyField(User, b

我有两个非常相似的M2M字段模型,不知怎的,我试图查询其中一个工作得很好,但当我尝试与另一个相同的代码时,它会给我错误。我能找到的唯一区别是
相关的\u名称

我找到了一个解决办法,但我仍然很好奇,如果我下次遇到同样的问题,我如何才能让这个工作

(我只写了我拥有的M2M字段,每个模型只有一个M2M字段,即使想起来,如果有多个M2M,该怎么办,但这是不可能的)

这是我的工作模式

class Team(View):
    members = models.ManyToManyField(User, blank=True)
这是上述模型的视图(跳过
def post等)

下面是给我带来问题的模型

class Room(View):
    participants = models.ManyToManyField(User, blank=True, related_name='participants')
这是上述模型的视图

user = User.objects.filter(id=111).first()
all_p = user.room_set.filter()  # this then gives me error of 'User' object has no attribute 'room_set'

提前感谢您在定义
相关\u名称时提供的任何帮助

,您需要这样使用它:

Model.related_name.* 
别名
相关模型集
被销毁

因此,您的代码应该如下所示:

user = User.objects.filter(id=111).first()
all_p = user.participants.filter()  # this then gives me error of 'User' object has no attribute 'room_set'

啊!!好的,它将使它像一个
user
字段,它确实可以工作~thx-thx,但需要等待几分钟,直到我可以接受为止answer@Tsuna很高兴它有帮助!
user = User.objects.filter(id=111).first()
all_p = user.participants.filter()  # this then gives me error of 'User' object has no attribute 'room_set'