2017-06-22 12 views
0
class Entry(models.Model): 
    title = models.CharField(max_length=200) 
    post_type = models.CharField(max_length=50, default="others") 
    author = models.CharField(max_length=30, default = "") 
    body = models.TextField() 
    slug = models.SlugField(max_length = 200, unique = True) 
    publish = models.BooleanField(default=True) 
    created = models.DateTimeField(auto_now_add=True) 
    modified = models.DateTimeField(auto_now_add=True) 

    objects = EntryQuerySet.as_manager() 

    def __str__(self): 
     return self.title 

    class Meta: 
     verbose_name = "Blog Entry" 
     verbose_name_plural = "Blog Entries" 
     ordering = ["-created"] 

上面的代码是我的models.py我想创建一个Django查询返回的post_type的帖子“手机”

class MobilesIndex(generic.ListView): 
    queryset = models.Entry.objects.get(post_type="Mobile") 
    template_name = "index.html" 
    paginate_by = 5 

def Mobiles(request): 
    context = locals() 
    template = "Mobiles.html" 
    return render(request,template,context) 

上面的代码是view.py

我如何写一个只有那些post_type的职位查询=“移动”

回答

0
queryset = models.Entry.objects.filter(post_type="Mobile") 

这会给你所有的岗位类型和模板来呈现你需要循环它

+0

我试图循环它。它应该表现出的类型“手机”的帖子,但后我添加了queryset = models.Entry.objects.filter(post_type =“Mobile”)它不断重定向到index.html页面 –

+0

没有得到你,你能有点清楚吗? – Exprator

+0

我试图循环它。它应该显示在手机页面类型“手机”的帖子,但在我添加queryset = models.Entry.objects.filter(post_type =“手机”)后,它保持重定向到index.html page [22/Jun/2017 12:18:17]“GET/Mobiles/HTTP/1.1”200 7437 [22/Jun/2017 12:18:18]“GET/Mobiles/HTTP/1.1”200 7437 我甚至从服务器获取GET响应..但仍然去index.html –

1

尝试:

Entry.objects.fitler(post_type="Mobile") 

get() return如果不存在多个对象,则返回一个对象或模糊对象,但是filter()返回所有对象(如果没有对象,则返回None)。