Skip to main content
 首页 » 编程设计

python之Django之从外键 ManyToManyField 获取值

2024年10月01日32pengyingh

请帮忙理解。

我有下一个模型:

class TagsList(models.Model): 
    tags_list = models.CharField(max_length=30) 
 
    def __str__(self): 
        return self.tags_list 
 
class Blog(models.Model): 
    title = models.CharField(max_length=200) 
    content = models.TextField() 
    pub_date = models.DateTimeField(auto_now_add=True) 
    tags = models.ManyToManyField(TagsList) 

如何按对象获取相关标签(在我的例子中是带有 post_id 的对象)? 这是我的 View 文件:

def single(request, post_id): 
    object_post = Blog.objects.get(id=post_id) 
    tags = TagsList.objects.all() 
    content = { 
        'object_post': object_post, 
        'tags': tags, 
    } 
    return render(request, 'single.html', content) 

我尝试了所有情况,但不知道如何将与此对象相关的标签准确地包含到内容中。 谢谢大家的帮助。

附言使用 Django 1.11

请您参考如下方法:

来自评论的初步回答:

在多对多关系中,您可以访问相关对象,在 def single 中尝试:

tags=object_post.tags.all()