2017-01-31 58 views
0

我试图让Django显示目前在home/index页面上的开发数据库中的所有记录的链接列表。Django返回不正确的属性

我views.py代码如下所示:

from django.http import HttpResponse 
from .models import GvData 


def index(request): 
    all_geneva_data = GvData.objects.all() 
    html = '' 

    for data in all_geneva_data: 
     url = '/geneva/' +str(GvData.id) + '/' 
     html += '<a href="' + url + '">title</a><br>' 
    return HttpResponse(html) 

我在我的数据库有几个样本记录已经和我通过使用每个记录确实有一个ID,并可以位于与外壳证实model.objects.filter(id='#')

此代码成功创建链接,但链接返回页面未找到错误。相反,将记录ID的整数值,什么是摆在网址是:

%3Cdjango.db.models.query_utils.DeferredAttribute%20object%20at%200x0452BF10%3E 

为什么我会得到这个代替id投的int值的作为URL模式的字符串?

回答

2

你引用的对象模型,而不是对象实例的

for data in all_geneva_data: 
      url = '/geneva/' +str(data.id) + '/' 
+0

这做到了。非常清晰和简洁的回应。我没有注意到这种情况。 –

相关问题