Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/318.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 如何在Django中按标记名筛选所有模型?_Python_Django_Django Models - Fatal编程技术网

Python 如何在Django中按标记名筛选所有模型?

Python 如何在Django中按标记名筛选所有模型?,python,django,django-models,Python,Django,Django Models,基本上,我想得到一个Post模型列表,通过Post.tags中包含的标记对象对它们进行过滤 以下是我的简化代码: def post_list(request, **kwargs): posts = Post.objects.order_by('name') posts.filter(tags__name__contains=kwargs["sort_val"], published=True) return render(request, 'post_list.html'

基本上,我想得到一个Post模型列表,通过Post.tags中包含的标记对象对它们进行过滤

以下是我的简化代码:

def post_list(request, **kwargs):
    posts = Post.objects.order_by('name')
    posts.filter(tags__name__contains=kwargs["sort_val"], published=True)
    return render(request, 'post_list.html', {"posts": posts})
在my models.py中:

class Tag(models.Model):
    name = models.CharField(max_length=10, unique=True)


class Post(models.Model):
    title = models.CharField(max_length=50)
    content = models.TextField()
    tags = models.ManyToManyField(Tag, blank=True)
这就给了我一个错误:
无法将关键字“name”解析为字段。选项包括:内容、id、标签、标题

您确定posts=Post.objects.order\u by('name')起作用了吗,看起来是“name”引起的问题?啊,这就是问题所在!该死的复制粘贴。。。谢谢,詹姆斯。