2012-05-09 19 views
2

こんにちは私はhaystack検索でdjangoを使用しています。私はイベントのための1つのモデルを持っています。それは私が検索しているモデルです。イベントのヒット/ビューをカウントする2番目のモデルがあります。検索結果に追加されるすべてのイベントのヒット数を返すことはできません。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()) 

答えて

2

のForeignKeyフィールド、それが呼び出すと、関連するオブジェクトをカウントすることができ、関連する名前を与えることによって。テンプレートで

class Foo(models.Model): 
    fk = models.ForeignKey(Event,related_name='foofk') 
    some more fields... 

{{ foo.foofk.count }} 
+0

iはバックエンドでこのようなものをどのように行うのですか? – psychok7