一旦我加载了我的模型并过滤了它,如果我需要,我该如何访问结果?我可以找到关于查询和过滤模型的例子,但没有一个关于如何使用返回的对象?
我的模型是这样的…
class Ratecard(models.Model):
region = models.CharField(max_length=32)
reportSuite = models.CharField(max_length=32)
RP_UniqueUsers = models.IntegerField()
RP_PageImpressions = models.IntegerField()
def __str__(self):
return self.region
和我的简单索引视图是这样的…
def index(request):
reportSuites = Ratecard.objects.all()
return render_to_response('index.html', locals())
我想要能够做的是基于区域过滤,然后访问其他字段中的值…这是一个非常简单的PHP,但我几乎不知道任何python/django,所以任何帮助将是惊人的。
对,所以我需要做的是对返回的内容执行一些计算,所以我可以做…reportSuite = Ratecard.objects.get(region="Liverpool") answer = reportSuite.RP_UniqueUsers * 100
正确吗?
如果您希望使用实例,如:
reportSuite = Ratecard.objects.get(id=??)
reportSuite.region
reportSuite = Ratecard.objects.all()
for reportSuite in reportSuites:
reportSuite.region
但是如果你想在你的页面中直接使用实例,你必须在模板
中做return render_to_response('template_name', {'reports':reportSuites})
模板中:
{%for report in reports%}
{{report.region}}
{%endfor%}
关于render_to_response的信息关于Django模板的信息
更新:是的,你可以这样做,但最好的地方是你的视图函数…所以:
answer = reportSuite.RP_UniqueUsers * 100
return render_to_response('template_link', {'reports':reportSuites, 'ans':answer})
在模板中可以使用
{{ans}}