2013-02-15 47 views
0

我希望看到一个AJAX GET请求后,在HTML我查询结果查询的结果。 请找我的代码如下, 高清tanim_ajax(请求):看不到模板

#views.py 
def tanim_ajax(request): 

    if request.GET.get('q'): 

     q = request.GET.get('q') 
     results = Title.objects.filter(title__contains=q), 
     print results 
     return render_to_response('tanim/ajax.html', 
            {'results':results}, 
            context_instance=RequestContext(request)) 

#models.py 
class Title(models.Model): 
    title = models.CharField(max_length=100,verbose_name="Başlık") 
    category = models.ForeignKey(Category,verbose_name="Kategori") 
    active = models.BooleanField(default=False) 
    slug = models.SlugField(editable=False) 

    def __unicode__(self): 
     return self.title 

一切正常模板

{% for i in results %} 
<br>{{i}} 
{% endfor %} 

我可以看到结果为[<Title: foo>]当我检查了http://127.0.0.1:8000/tanimlar/tanim_ajax/?q=foo网址。

但是,当我有以下模板

{% for i in results %} 
<br>{{i.title}} 
{% endfor %} 

我没有看到任何结果。任何想法 ?

+0

代码看起来不错:)得到任何错误??? – kartheek 2013-02-15 18:08:40

+0

完全没有错误。只是不能看到任何结果,当我寻找的物品items.template来空 – tunaktunak 2013-02-15 18:09:42

+0

只是硬编码一些消息循环像'

标题:


'在您的模板可能会给一些想法 – kartheek 2013-02-15 18:12:08

回答

1

因为你传递一个QuerySet到上下文。相反,尝试附加值()到你的查询将返回一个字典。

results = Title.objects.filter(title__contains=q).values() 
+0

抱歉,但还是一样 – tunaktunak 2013-02-15 18:24:02

+0

您是否确信您的查询返回的实例有一个标题属性设置? – 2013-02-15 18:28:11

+0

是的,我敢肯定 – tunaktunak 2013-02-15 18:30:59