Django模板正在打印对象表示而不是对象值

时间:2019-03-17 18:40:27

标签: python django templates view

Time*

Time

this->timeRemaining = *initialTime;

Time::operator=

打印输出:

views.py

而不是例如@login_required def ManageDomain(request): AssocNotAuthDomains = Tld.objects.filter(FKtoUser_id=request.user,auth=0) AssocAuthDomains = Tld.objects.filter(FKtoUser_id=request.user,auth=1) return render(request, 'site/account/template.html', { 'AssocNotAuthDomains':AssocNotAuthDomains, 'AssocAuthDomains':AssocAuthDomains })

我在做什么错了?

谢谢

2 个答案:

答案 0 :(得分:1)

如果要渲染这样的模型实例,则必须在模型中实现__str__

class Tld(models.Model):
    def __str__(self):
        # return something meaningful here like self.some_attribute

或者您必须在这样的模板中明确使用属性

 {{ authdomain.some_attribute }}

否则,python不知道如何从对象中显示有意义的东西。

答案 1 :(得分:0)

这是因为您试图显示整个对象,而不是值。

您需要更换

{{ notauthdomain }}

{{ notauthdomain.name }} 

将“名称”替换为您的值的字段名称-websiteabc.com