嗨我正在使用django和haystack搜索。我有一个活动模型。那就是我正在进行搜索的模型。我有第二个模型来计算事件的命中/视图。我不想返回搜索结果之外的每个事件的点击次数。
我的观点:
def event_search(request):
if request.method == 'POST':
query = str(request.POST['search'])
events = SearchQuerySet().auto_query(query).models(Event).order_by('date')
return render_to_response('event_search.html', {"events": events}, context_instance=RequestContext(request))
else:
return render_to_response('event_search.html', context_instance=RequestContext(request))
我的模特:
class Event(models.Model):
name = models.CharField(max_length = 70)
date = models.DateTimeField()
description = models.TextField()
active = models.BooleanField(default=True, editable=False)
featured = models.BooleanField(default=False)
class EventHitcount(models.Model):
hit = models.ForeignKey(Event)
ip = models.CharField(max_length=40)
session = models.CharField(max_length=40)
created = models.DateTimeField(default=datetime.datetime.now())
答案 0 :(得分:2)
通过给ForeignKey字段一个相关的名称,它可以调用并计算相关的对象。
class Foo(models.Model):
fk = models.ForeignKey(Event,related_name='foofk')
some more fields...
在模板中:
{{ foo.foofk.count }}