我不知道如何在Django
中过滤反向的ManyToMany
。我想获取LanguageLevel
对象,至少与一个UserProfile
对象连接
在人类中:所有语言(如至少一个用户)都可以说这种语言
我有一个模型:
class LanguageLevel(models.Model):
...
及
class UserProfile(models.Model):
...
language_levels = models.ManyToManyField('LanguageLevel', blank=True, related_name='translators')
...
已尝试:
active_language_levels = LanguageLevel.objects.filter(lambda x: len(x.translators)!=0)
及
for language_level in LanguageLevel.objects.all():
print language_level.translators
if len(language_level.translators)>0:
print 'ok'
print language_level
else:
print 'no'
print language_level
我想你正在寻找这样的东西:
只需在
translators__id
上添加适当的链接,即可统计每个用户的不同条目如果要为特定用户选择语言,只需在注释之前传递适当的查询集:
不能使用django orm按M2M字段进行筛选。相反,您可以遵循此解决方法
LanguageLevel.objects.all().values('language_levels__id')
相关问题 更多 >
编程相关推荐