[英]Get field values from manytomany relationship in Django model
我正在尝试获取与另一个模型关联的字段值。 模型Category
与Profile
模型有manytomany
关系。
Category
id category_name module_name
1 A X
2 B Y
profile_category
id profile_id category_id
1 2 1
例如。 如果将类别ID 1
分配给用户ID 2
我想显示模块名称X
models.py
class Category(models.Model):
category_name = models.CharField(max_length=150, blank=False, null=True, default="", unique=True)
module_name = models.TextField(blank=False, null=True)
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE, related_name ='profile')
phone_number = PhoneNumberField( blank=True, null=True)
organisation = models.CharField(max_length=30, blank=True)
category = models.ManyToManyField(Category)
# Get the list of module names
我尝试使用module_name = Coupling.objects.values('module_name')
但这将返回所有module_names而不是与用户ID 2关联的名称
任何帮助/建议都将受到高度赞赏。 提前致谢。
尝试这个:
user = User.objects.get(id=2)
print(user.profile.category.values('module_name'))
更新:
print(Profile.objects.filter(user=2).values('category__module_name'))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.