2010-08-09 37 views
1

新的django,这可能是一个简单/明显的问题,所以我提前道歉。在many_to_many字段上过滤

我有以下模型

class Team(models.Model): 
    name = models.CharField(max_length=100) 
    members = models.ManyToManyField(User, related_name="members", blank=True, null=True) 

而下面的视图(控制器)

def my_teams(request): 
    my_list = Team.objects.filter(???????).order_by('name') 
    return render_to_response('teams/index.html', {'my_list': my_list}) 

该视图的目的是仅列出那些当前登录的用户的项目是一个构件的。作为一个多对多的关系,每个团队中可以有很多成员。

任何意见如何实现这一点将不胜感激。

回答

0

你没有描述Project模型,但我想它有一个外国的Team之一。因此,这里是我会怎么到:

Project.objects.filter(team__user=request.user).order_by('name') 
上面我犯了一个小错误跨越

my_list = Team.objects.filter(members=request.user).order_by('name') 

感谢您的帮助复制我的代码的答案

+0

抱歉项目应该在视图代码中读取团队 - 现在已修复。这个答案仍然有效吗? – 2010-08-09 10:03:44

0

轻微的变化!