我是django的新手,我正尝试使用多个过滤器从数据库导入数据。
views.py
from django.shortcuts import render
from django.http import HttpResponse
from .models import NodesdataArchive
# Create your views here.
def home_view(request, *args, **kwargs):
data = NodesdataArchive.objects.filter(status=1, vendor='F5', location='NA')
host = {
"dns" : data
}
return render (request, "home.html", {'posts': host})
使用多个查询后,我仅选择要显示的对象“ dns”。当我检查“主机”变量的值,它显示正确的输出。当我将其加载到html模板中时,其显示的完整输出显示在“主机”变量中,而不是单独的确切值。
当前输出:
“ QuerySet [NodesdataArchive:NodesdataArchive对象(奥斯汀)>]>”
期望输出显示在html模板中:
奥斯汀
请帮助,谢谢!!!!
models.py
class NodesdataArchive(models.Model):
ip_address = models.CharField(db_column='IP_Address', max_length=50, blank=True, null=True) # Field name made lowercase.
dns = models.CharField(db_column='DNS', max_length=255, blank=True, primary_key=True) # Field name made lowercase.
vendor = models.CharField(db_column='Vendor', max_length=255, blank=True, null=True) # Field name made lowercase.
location = models.CharField(db_column='Location', max_length=255, blank=True, null=True) # Field name made lowercase.
status = models.CharField(db_column='Status', max_length=20, blank=True, null=True) # Field name made lowercase.
答案 0 :(得分:0)
大概是在模板中
{{ dns }}
尝试
{% for item in dns %}
{{ item }}
{% endfor %}
说明:
您正在下载查询集而不是特定项目,因为您正在使用filter()
。如果您知道只有一条记录符合过滤条件,请使用NodesdataArchive.objects.get(status=1, vendor='F5', location='NA')
,然后{{dns}}将在模板中工作。