Searching in the API
parent
9210c22b01
commit
466ecaee3a
|
@ -6,6 +6,7 @@ from tastypie.resources import ModelResource
|
|||
from django.contrib.auth.models import User
|
||||
from tastypie.models import create_api_key
|
||||
from snipts.models import Favorite, Snipt
|
||||
from haystack.query import SearchQuerySet
|
||||
from tastypie.cache import SimpleCache
|
||||
from tastypie.fields import ListField
|
||||
from taggit.models import Tag
|
||||
|
@ -91,6 +92,10 @@ class PublicSniptResource(ModelResource):
|
|||
tagged_items = tag.taggit_taggeditem_items.all()
|
||||
orm_filters['pk__in'] = [i.object_id for i in tagged_items]
|
||||
|
||||
if 'q' in filters:
|
||||
sqs = SearchQuerySet().auto_query(filters['q'])
|
||||
orm_filters['pk__in'] = [i.pk for i in sqs]
|
||||
|
||||
return orm_filters
|
||||
|
||||
|
||||
|
@ -196,6 +201,10 @@ class PrivateSniptResource(ModelResource):
|
|||
tagged_items = tag.taggit_taggeditem_items.all()
|
||||
orm_filters['pk__in'] = [i.object_id for i in tagged_items]
|
||||
|
||||
if 'q' in filters:
|
||||
sqs = SearchQuerySet().auto_query(filters['q'])
|
||||
orm_filters['pk__in'] = [i.pk for i in sqs]
|
||||
|
||||
return orm_filters
|
||||
|
||||
def apply_authorization_limits(self, request, object_list):
|
||||
|
|
Loading…
Reference in New Issue