def search(request): sqs = SearchQuerySet().models(models.Entry, models.Comment) view = search_view_factory(view_class=MySearch, template='blog/search.html', searchqueryset=sqs, form_class=HighlightedSearchForm) return view(request)
def get_urls(self): # Build SQS based on the OSCAR_SEARCH_FACETS settings sqs = SearchQuerySet() for facet in settings.OSCAR_SEARCH_FACETS['fields'].values(): sqs = sqs.facet(facet['field']) for facet in settings.OSCAR_SEARCH_FACETS['queries'].values(): for query in facet['queries']: sqs = sqs.query_facet(facet['field'], query[1]) # The form class has to be passed to the __init__ method as that is how # Haystack works. It's slightly different to normal CBVs. urlpatterns = patterns( '', # This view is used in the default templates (at the moment) url(r'^$', self.search_view( form_class=forms.MultiFacetedSearchForm), name='search'), # This view is used in the demo site. url(r'^default/$', search_view_factory( view_class=views.FacetedSearchView, form_class=forms.PriceRangeSearchForm, searchqueryset=sqs, template='search/results.html'), name='search-default'), ) return self.post_process_urls(urlpatterns)
def get_urls(self): return [ url(r'^$', search_view_factory( view_class=self.search_view, form_class=self.search_form), name='search'), ]
def test_thread_safety(self): exceptions = [] def threaded_view(resp_queue, view, request): import time; time.sleep(2) try: inst = view(request) resp_queue.put(request.GET['name']) except Exception as e: exceptions.append(e) raise class ThreadedSearchView(SearchView): def __call__(self, request): print("Name: %s" % request.GET['name']) return super(ThreadedSearchView, self).__call__(request) view = search_view_factory(view_class=ThreadedSearchView) resp_queue = queue.Queue() request_1 = HttpRequest() request_1.GET = {'name': 'foo'} request_2 = HttpRequest() request_2.GET = {'name': 'bar'} th1 = Thread(target=threaded_view, args=(resp_queue, view, request_1)) th2 = Thread(target=threaded_view, args=(resp_queue, view, request_2)) th1.start() th2.start() th1.join() th2.join() foo = resp_queue.get() bar = resp_queue.get() self.assertNotEqual(foo, bar)
def get_urls(self): return [ url(r'^$', search_view_factory(view_class=self.search_view, form_class=self.search_form), name='search'), ]
def get_urls(self): # Build SQS sqs = SearchQuerySet() for facet in settings.OSCAR_SEARCH_FACETS["fields"].values(): sqs = sqs.facet(facet["field"]) for facet in settings.OSCAR_SEARCH_FACETS["queries"].values(): for query in facet["queries"]: sqs = sqs.query_facet(facet["field"], query[1]) # The form class has to be passed to the __init__ method as that is how # Haystack works. It's slightly different to normal CBVs. urlpatterns = patterns( "", url(r"^$", self.search_view(form_class=forms.MultiFacetedSearchForm), name="search"), url(r"^suggest/$", self.suggest_view.as_view(), name="suggest"), url( r"^default/$", search_view_factory( view_class=views.FacetedSearchView, form_class=forms.PriceRangeSearchForm, searchqueryset=sqs, template="search/results.html", ), name="search_default", ), ) return self.post_process_urls(urlpatterns)
def get_urls(self): urls = [ url(r'^$', search_view_factory( view_class=self.search_view, form_class=self.search_form), name='search'), ] return patterns('', *urls)
class HaystackSearchApphook(CMSApp): name = _("search apphook") urls = [ patterns( '', url('^$', search_view_factory(), name='haystack-search'), ), ]
def get_urls(self): # The form class has to be passed to the __init__ method as that is how # Haystack works. It's slightly different to normal CBVs. urlpatterns = [ url(r'^$', search_view_factory(view_class=self.search_view, form_class=self.search_form, searchqueryset=self.get_sqs()), name='search'), url(r'^vendor/$', search_view_factory(view_class=self.searchvendor_view, form_class=self.search_form2, searchqueryset=self.get_sqs()), name='search-vendor') ] return self.post_process_urls(urlpatterns)
def search(request): view = search_view_factory( # view_class=SearchView, # experiment to try to pass extra_context view_class= MySearchView, # experiment to try to pass extra_context: IT WORKS! template='search/search.html', form_class=AutocompleteSearchForm, ) return view(request)
def get_urlpatterns(self): """ Returns the URL patterns managed by the considered factory / application. """ return [ url( r'^$', search_view_factory(view_class=self.search_view, form_class=self.search_form), name='search', ), ]
def get_urlpatterns(self): """ Returns the URL patterns managed by the considered factory / application. """ return [ path( '', search_view_factory(view_class=self.search_view, form_class=self.search_form), name='search', ), ]
def search_vacancies(request): post_type = str(request.GET.get('q')).lower() sqs = SearchQuerySet().all() view = search_view_factory( view_class=SearchView, template='search/search.html', searchqueryset=sqs, form_class=HighlightedSearchForm ) return view(request)
def get_urls(self): # The form class has to be passed to the __init__ method as that is how # Haystack works. It's slightly different to normal CBVs. urlpatterns = [ url(r'^$', search_view_factory( view_class=self.search_view, form_class=self.search_form, searchqueryset=self.get_sqs()), name='search'), ] return self.post_process_urls(urlpatterns)
def search(request): request.session["last_search"] = request.GET sqs = SearchQuerySet().filter(content_auto=request.GET.get('q', '')) request.session["sqs"] = sqs view = search_view_factory( view_class=CustomSearchView, template="search.html", searchqueryset=sqs, form_class=CustomSearchForm, context_class=RequestContext, ) return view(request)
def get_urls(self): from haystack.views import search_view_factory # The form class has to be passed to the __init__ method as that is how # Haystack works. It's slightly different to normal CBVs. urlpatterns = [ path('', search_view_factory( view_class=self.search_view, form_class=self.search_form, searchqueryset=self.get_sqs()), name='search'), ] return self.post_process_urls(urlpatterns)
def get_urls(self): # The form class has to be passed to the __init__ method as that is how # Haystack works. It's slightly different to normal CBVs. # 表单类必须传递给__init__方法,因为这就是Haystack的工作方式。 它与普通的CBV略有不同。 urlpatterns = [ url(r'^$', search_view_factory(view_class=self.search_view, form_class=self.search_form, searchqueryset=self.get_sqs()), name='search'), ] return self.post_process_urls(urlpatterns)
def search_listings_custom_form(request): """Searches only listings objects using the query string and any filters selected from the search filter page. Arguments: request -- the HTTP request from the users browser """ view = search_view_factory(view_class=ListingSearchView, template=TEMPLATE_PATHS['listings_results'], searchqueryset=SearchQuerySet().models(Listing), form_class=ListingSearchForm) return view(request)
def search(request): # 控制权从haystack交到我手中了 sqs = SearchQuerySet().all() search_view = search_view_factory( view_class=MySearchView, template='search/search.html', searchqueryset=sqs, ) global flag # 全局,向 extra_context 传参不便,故而用全局变量 if request.user != AnonymousUser(): # 登录 flag = True else: flag = False return search_view(request)
def get_urls(self): # The form class has to be passed to the __init__ method as that is how # Haystack works. It's slightly different to normal CBVs. urlpatterns = [ url(r'^$', search_view_factory( view_class=self.search_view, form_class=self.search_form, searchqueryset=self.get_sqs()), name='search' ), url(r'^model/$', search_view_factory( view_class=ModelSearchView, form_class=self.search_form, searchqueryset=self.get_sqs()), name='searchByModel' ), url(r'^serial/$', search_view_factory( view_class=SerialSearchView, form_class=self.search_form, searchqueryset=self.get_sqs()), name='searchBySerial' ), ] return self.post_process_urls(urlpatterns)
def search(request): sqs = SearchQuerySet().all() homepage_list = Page.objects.filter(Dest='home').order_by('-pub_date')[:5] extra_context = Context({ 'homepage_list': homepage_list, }) view = search_view_factory( view_class=SearchView, template='search/search.html', context_class=RequestContext, searchqueryset=sqs, ) return view(request)
def search_listings_custom_form(request): """Searches only listings objects using the query string and any filters selected from the search filter page. Arguments: request -- the HTTP request from the users browser """ view = search_view_factory( view_class=ListingSearchView, template=TEMPLATE_PATHS['listings_results'], searchqueryset=SearchQuerySet().models(Listing), form_class=ListingSearchForm ) return view(request)
def search_listing(request, model, template_name='search/search.html'): # Extract the model type from the full path, which should be the plural name # of a valid model type (ex: '/users/') if model not in MODEL_FACETS.keys(): raise Http404 sqs = SearchQuerySet().models(model, ) sqs = sqs.order_by('name') for facet in MODEL_FACETS[model]: sqs = sqs.facet(facet) view = search_view_factory( view_class=FacetedSearchCustomView, template=template_name, searchqueryset=sqs, form_class=FacetedSearchListingForm, ) return view(request)
def CustomSearchView(request): #form = CustomSearchForm(request.GET) #search_string = request.GET.get('q', '') #response = urlopen("http://api.railwayapi.com/route/train/search_string/apikey/3dacdecg/").read().decode('utf8') #obj = json.loads(response) #x = obj['route'] #b = [a['code'] for a in x] object_list = SearchQuerySet().all() view = search_view_factory(view_class=SearchView, template='search/search.html', searchqueryset=object_list, form_class=SearchForm) # context= { # 'object_list': object_list, # 'form':form, # } return view(request)
def search_listing(request, model, template_name='search/search.html'): # Extract the model type from the full path, which should be the plural name # of a valid model type (ex: '/users/') if model not in MODEL_FACETS.keys(): raise Http404 sqs = SearchQuerySet().models(model, ) # import pdb; pdb.set_trace() field = request.GET.get("sort", "created") asc = "-" if not request.GET.get("dir") == "asc" else "" ordering = "{direction}{field}".format(field=field, direction=asc) sqs = sqs.order_by(ordering) for facet in MODEL_FACETS[model]: sqs = sqs.facet(facet) view = search_view_factory( view_class=FacetedSearchCustomView, template=template_name, searchqueryset=sqs, form_class=FacetedSearchListingForm, ) return view(request)
def search_posts_custom_form(request): """Searches only post objects using the query string and specific post type selected from the dropdown menu in the global search bar Arguments: request -- the HTTP request from the users browser """ post_type = request.GET.get('type', None) if post_type: post_type = str(post_type).lower() q_string = request.GET['q'] sqs = SearchQuerySet().filter(content=AutoQuery(q_string), type=Exact(post_type)) view = search_view_factory( view_class=PostSearchView, template=TEMPLATE_PATHS['posts_results'], searchqueryset=sqs, form_class=PostSearchForm, ) return view(request)
def get_urls(self): # The form class has to be passed to the __init__ method as that is how # Haystack works. It's slightly different to normal CBVs. urlpatterns = patterns( '', url(r'^$', login_required(search_view_factory( view_class=self.search_view, form_class=self.search_form, searchqueryset=self.get_sqs())), name='search'), url(r'^home/$', login_required(self.index_view.as_view()), name='home'), url(r'^receivedquotes/$', login_required(self.received_quote_view.as_view()), name='receivedquotes'), url(r'^activesearches/$', login_required(self.active_searches_view.as_view()), name='activesearches'), url(r'^history/$', login_required(self.history_searches_view.as_view()), name='history'), url(r'^expiredsearches/$', login_required(self.expired_searches_view.as_view()), name='expiredsearches'), url(r'^canceledsearches/$', login_required(self.canceled_searches_view.as_view()), name='canceledsearches'), url(r'^recalcquotes/$', login_required(self.recalc_quotes_view.as_view()), name='recalcquotes'), url(r'^sentquotes/$', login_required(self.sent_quotes_view.as_view()), name='sentquotes'), url(r'^placesearch/$', login_required(self.confirm_view.as_view()), name='placesearchrequest'), url(r'^placed/$', login_required(self.placed_view.as_view()), name='placed'), url(r'^quoteplaced/$', login_required(self.quoteplaced_view.as_view()), name='quoteplaced'), url(r'^acceptquote/(?P<number>[\w-]*)/$', login_required(self.quote_accept_view.as_view()), name='acceptquote'), url(r'^cancelsearch/$', login_required(self.cancel_view.as_view()), name='cancel'), url(r'^confirmrecalcquote/(?P<number>[\w-]*)/$', login_required(self.quote_recalc_view.as_view()), name='confirmrecalcquote'), url(r'^recalcquote/$', login_required(self.recalc_quote_view.as_view()), name='recalcquote'), url(r'^sendrecalcquote/$', login_required(self.send_recalc_quote_view.as_view()), name='sendrecalcquote'), url(r'^cancelquote/$', login_required(self.recalc_quote_view.as_view()), name='cancelquote'), url(r'^recalcplaced/$', login_required(self.recalcplaced_view.as_view()), name='recalcplaced'), url(r'^sendrecalcplaced/$', login_required(self.recalcplaced_view.as_view()), name='sendrecalcplaced'), url(r'^cancelplaced/$', login_required(self.cancelplaced_view.as_view()), name='cancelplaced'), url(r'^pendingrequests/$', login_required(self.pending_search_requests_view.as_view()), name='request-list'), url(r'^detail/(?P<number>[\w-]*)/$', login_required(self.search_detail_view.as_view()), name='detail'), url(r'^quotedetail/(?P<number>[\w-]*)/$', login_required(self.quote_detail_view.as_view()), name='quotedetail'), url(r'^quoteview/(?P<number>[\w-]*)/$', login_required(self.quote_view.as_view()), name='quoteview'), url(r'^createquote/(?P<pk>[\w-]*)/$', login_required(self.create_quote_view.as_view()), name='quote'), url(r'^placeorder/$', login_required(self.place_order_view.as_view()), name='placeorder'), url(r'^orderplaced/$', login_required(self.orderplaced_view.as_view()), name='orderplaced'), ) return self.post_process_urls(urlpatterns)
def get_urls(self): # Build SQS sqs = SearchQuerySet() for facet in settings.OSCAR_SEARCH_FACETS['fields'].values(): sqs = sqs.facet(facet['field']) for facet in settings.OSCAR_SEARCH_FACETS['queries'].values(): for query in facet['queries']: sqs = sqs.query_facet(facet['field'], query[1]) # The form class has to be passed to the __init__ method as that is how # Haystack works. It's slightly different to normal CBVs. urlpatterns = patterns('', url(r'^$', self.search_view(form_class=forms.MultiFacetedSearchForm), name='search'), url(r'^default/$', search_view_factory( view_class=views.FacetedSearchView, form_class=forms.PriceRangeSearchForm, searchqueryset=sqs, template='search/results.html'), name='search-default'), ) return self.post_process_urls(urlpatterns)
views.organization, name='organization'), url(r'^organizations/?$', views.all_organizations, name='all_organizations'), url(r'^registrationauthorities/?$', views.all_registration_authorities, name='all_registration_authorities'), url(r'^account/toggleFavourite/(?P<iid>\d+)/?$', views.toggleFavourite, name='toggleFavourite'), url(r'^extensions/?$', views.extensions, name='extensions'), url(r'^about/aristotle/?$', TemplateView.as_view( template_name='aristotle_mdr/static/aristotle_mdr.html'), name="aboutMain"), url(r'^about/(?P<template>.+)/?$', views.DynamicTemplateView.as_view(), name="about"), url(r'^accessibility/?$', TemplateView.as_view( template_name='aristotle_mdr/static/accessibility.html'), name="accessibility"), url(r'^search/?', search_view_factory(view_class=views.PermissionSearchView, template='search/search.html', searchqueryset=None, form_class=forms.search.PermissionSearchForm), name='search'), ]
from haystack.forms import SearchForm from haystack.views import search_view_factory from django.contrib.staticfiles.urls import staticfiles_urlpatterns haystack.autodiscover() admin.autodiscover() # Uncomment the next two lines to enable the admin: from django.contrib import admin # admin.autodiscover() urlpatterns = patterns('',(r'^createdata/', do_it_all), #search (r'^search/', include('haystack.urls')), (r'^search/', search_view_factory( form_class=ModelSearchForm)), (r'^erp/$', include('erp.home.urls')), (r'^erp/home/',include('erp.home.urls')), #(r'^erp/users/', include('erp.users.urls')), #(r'^erp/dashboard/',include('erp.dashboard.urls')), # Make the above 2 URLConfs look like these 2 below (r'^erp/(?P<owner_name>\w+)/users/', include('erp.users.urls')), (r'^erp/(?P<owner_name>\w+)/dashboard/',include('erp.dashboard.urls')), (r'^erp/(?P<owner_name>\w+)/', include('erp.tasks.urls')), #(r'^now/sign.html$', sign_in, ), # Examples: # url(r'^$', 'erp.views.home', name='home'), # url(r'^erp/', include('erp.foo.urls')), # Uncomment the admin/doc line below to enable admin documentation: # url(r'^admin/doc/', include('django.contrib.admindocs.urls')), # Uncomment the next line to enable the admin:
#(r'^oldsearch/', 'ahmia.views_search.search_page'), # Search without JavaScript: with XSLT. #(r'^find/(.*)', 'ahmia.views_search.find'), #) # Apache Solr connection API urlpatterns += patterns('', (r'^search/API', 'ahmia.views_search.solrapi'), ) # Haystack based search urlpatterns += patterns('', # The full text search page. (r'^search/autocomplete', 'ahmia.views_search.autocomplete'), url(r'^search/', search_view_factory( view_class=CustomSearchView, form_class=WordsSearchForm ), name='haystack_search'), ) # Stats views urlpatterns += patterns('', # Stats (r'^stats/viewer', 'ahmia.views_stats.statsviewer'), (r'^stats/popularity', 'ahmia.views_stats.stats'), (r'^stats/tor2web', 'ahmia.views_stats.tor2web'), (r'^stats/history', 'ahmia.views_stats.history'), (r'^stats/traffic', 'ahmia.views_stats.trafficviewer'), ) # Admin views urlpatterns += patterns('',
regex='^$', view=cache_page(STANDARD_CACHE_TIME)( HomepageView.as_view(template_name='homepage.html')), kwargs={}, name='homepage', ), url(r'^articles/', include('source.articles.urls')), url(r'^code/', include('source.code.urls')), url(r'^guides/', include('source.guides.urls')), url(r'^jobs/', include('source.jobs.urls')), url(r'^organizations/', include('source.people.urls.organizations')), url(r'^people/', include('source.people.urls.people')), url( regex='^search/$', view=search_view_factory( view_class=SourceSearchView, form_class=SearchForm, searchqueryset=SearchQuerySet().order_by('django_ct')), kwargs={}, name='haystack_search', ), url( regex='^clear-cache/$', view=ClearCache.as_view(), kwargs={}, name='clear_cache', ), url( regex='^send-to-slack/$', view=SlackMessageView.as_view(), kwargs={}, name='send_to_slack',
facet_list = ( 'language', 'status', 'publisher', 'category', 'location', ) for facet in facet_list: sqs = sqs.facet(facet) # urlpatterns += patterns('haystack.views', # url(r'^search/$', # FacetedSearchCustomView(form_class=FacetedSearchForm, searchqueryset=sqs), # name='bookshelf_search_view', # ), # )+ static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) urlpatterns += patterns( 'haystack.views', url(r"^search/", SearchBookshelf.as_view(), name='bookshelf_search_view'), ) + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) urlpatterns += patterns( 'bookshelf.search', url(r'^search/advanced/$', search_view_factory(view_class=SearchView, template='search/advanced_search.html', form_class=ItemSearchForm), name='bookshelf_advanced_search_view'), ) + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
from django.contrib import admin from apps.common.forms import ForgivingSearchForm from haystack.views import SearchView, search_view_factory admin.autodiscover() urlpatterns = patterns( "", (r"^$", include("apps.common.urls")), url(r"^admin/", include(admin.site.urls)), (r"^schedule/", include("apps.schedule.urls")), (r"^resources/", include("apps.resources.urls")), (r"^news/", include("apps.news.urls")), #(r"^search/", include("haystack.urls")), ) urlpatterns += patterns( "haystack.views", url(r"^search/", search_view_factory(view_class=SearchView, form_class=ForgivingSearchForm), name="haystack_search"), ) # Serve media files in debug mode. if settings.DEBUG: urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
from django.conf.urls import patterns, include, url from django.contrib.flatpages import urls from search.views import CustomSearchView from haystack.views import search_view_factory from django.conf import settings from django.contrib import admin admin.autodiscover() urlpatterns = patterns( "", url("", include("lobbyingph.urls")), url(r"^api/", include("api.urls")), url(r"^search/", search_view_factory(view_class=CustomSearchView), name="haystack_search"), url(r"^about/", include(urls.urlpatterns)), url(r"^admin/", include(admin.site.urls)), ) if not settings.DEBUG: urlpatterns += patterns( "", url(r"^static/(.*)$", "django.views.static.serve", {"document_root": settings.STATIC_ROOT}) )
def as_view(cls, *args, **kwargs): return haystack_views.search_view_factory( view_class=cls, * args, **kwargs)
from aristotle_mdr.views import views from aristotle_mdr.forms.search import PermissionSearchForm from haystack.views import search_view_factory from haystack.query import SearchQuerySet urlpatterns = [ url(r'^', include('aristotle_mdr.urls')), url( r'^extension_test/', include('extension_test.extension_urls', app_name="extension_test", namespace="extension_test")), url(r'^fail_search/?', search_view_factory(view_class=views.PermissionSearchView, template='search/search.html', searchqueryset=SearchQuerySet(), form_class=PermissionSearchForm), name='fail_search'), url(r'^browse/', include('aristotle_mdr.contrib.browse.urls')), url( r'^help/', include('aristotle_mdr.contrib.help.urls', app_name="aristotle_help", namespace="aristotle_help")), url( r'^', include('aristotle_mdr.contrib.links.urls', app_name="aristotle_mdr_links", namespace="aristotle_mdr_links")), url( r'^publish/',
from django.conf.urls import patterns, include, url from haystack.views import SearchView, search_view_factory from haystack.forms import ModelSearchForm from haystack.query import SearchQuerySet from haystack.views import SearchView sqs = SearchQuerySet() urlpatterns = patterns( 'haystack.views', url(r'^$', search_view_factory(view_class=SearchView, template='search/search.html', searchqueryset=sqs, form_class=ModelSearchForm), name='haystack_search'), )
# speakers url(r'^speaker/$', 'speaker_list', name='videos-speaker-list'), url(r'^speaker/(?P<speaker_id>[0-9]+)(?:/(?P<slug>[\w-]*))?/?$', 'speaker', name='videos-speaker'), url(r'^speaker/(?P<speaker_id>[0-9]+)(?:/(?P<slug>[\w-]*))?/rss/?$', SpeakerVideosFeed(), name='videos-speaker-feed'), # videos url(r'^video/(?P<video_id>[0-9]+)(?:/(?P<slug>[\w-]*))?/?$', 'video', name='videos-video'), # search url(r'^search/?$', search_view_factory( view_class=SearchView, template='videos/search.html', form_class=ModelSearchForm), name='haystack-search'), url(r'^search/xml/?$', 'opensearch', name='videos-opensearch'), url(r'^search/suggestions/$', 'opensearch_suggestions', name='videos-opensearch-suggestions'), # faux api for carl url(r'^api/1.0/videos/urlforsource$', 'apiurlforsource', name='videos-api-urlforsource'), ) def build_api_urls(): v1_api = Api(api_name='v1')
urlpatterns = patterns('', url(r'^favicon\.ico$', RedirectView.as_view(url='/static/facicon.ico', permanent=True)), url(r'^admin/', include(admin.site.urls)), url(r'^taggit_autosuggest/', include('taggit_autosuggest.urls')), url(r'^conteudo/', include('portal.conteudo.urls', namespace='conteudo')), url(r'^selecao/', 'portal.core.views.selecao', name='selecao'), url(r'^dirf/', 'portal.dirf.views.download', name='download'), url(r'^admin_site_menu/(?P<site_id>\d+)/$', 'portal.core.views.admin_site_menu', name='admin_site_menu'), url(r'buscar/$', search_view_factory( view_class=SearchViewSites, template='search/search.html', searchqueryset=sqs, form_class=ModelSearchForm ), name='buscar'), # url(r'^guiadecursos/', 'portal.cursos.views.listagrupodecursos', name='listagrupodecursos'), url(r'^cursos/(?P<slug>[\w_-]+)/(?P<campus>\d+)/(?P<formacao>\d+)/$', 'portal.cursos.views.listacursosdogrupo', name='listacursosdogrupo'), url(r'^curso/(?P<slug>[\w_-]+)/$', 'portal.cursos.views.exibecurso', name='exibecurso'), url(r'^guiadecursoportal/', 'portal.cursos.views.guiadecursoportal', name='guiadecursoportal'), url(r'^jsonformacao/(?P<formacao_id>\d+)/$', 'portal.cursos.views.jsonformacao', name='jsonformacao'), url(r'^jsoncampi/(?P<campus_id>\d+)/$', 'portal.cursos.views.jsoncampi', name='jsoncampi'), url(r'^jsoncursos/(?P<curso_id>\d+)/$', 'portal.cursos.views.jsoncursos', name='jsoncursos'), url(r'^json_campi/(?P<formacao_id>\d+)/$', 'portal.core.views.json_campi', name='json_campi'), url(r'^json_cursos/(?P<formacao_id>\d+)/(?P<campus_id>\d+)/$', 'portal.core.views.json_cursos', name='json_cursos'),
( r"^mobile/success/$", "django.views.generic.simple.direct_to_template", {"template": "survey/mobile_success.html"}, ), (r"^mobile/map/(?P<survey_shortname>.+)/(?P<chart_shortname>.+)/$", "apps.pollster.views.survey_map"), (r"^mobile/login/$", "views.mobile_login"), ( r"^mobile/(?P<year>\d{4})/(?P<month>\d{1,2})/(?P<day>\d{1,2})/(?P<slug>[-\w]+)/$", "apps.journal.views.entry", {"template_name": "mobile"}, ), (r"^rss/$", LatestEntriesFeed()), # url(r'^captcha/', include('captcha.urls')), # (r'^tellafriend/', include('tellafriend.urls')), url(r"^search/$", search_view_factory(view_class=SearchView, form_class=SearchForm), name="haystack_search"), (r"^test-search/$", "views.test_search"), (r"^accounts/", include("apps.accounts.urls")), url(r"^login/$", redirect_to, {"url": settings.LOGIN_URL}, name="loginurl-index"), (r"^login/", include("loginurl.urls")), (r"^count/", include("apps.count.urls")), (r"^contest/", include("apps.contest.urls")), url(r"^contact/$", "contact_form.views.contact_form", {"form_class": ContactForm}, name="contact_form"), url( r"^contact/sent/$", "django.views.generic.simple.direct_to_template", {"template": "contact_form/contact_form_sent.html"}, name="contact_form_sent", ), (r"^colors.css$", "apps.partnersites.views.colors_css"), url(
(r'^sentry/', include('sentry.urls')), (r'^serie/', include('serie.urls.obj')), (r'^series/', include('serie.urls.entity')), (r'^admin/doc/', include('django.contrib.admindocs.urls')), (r'^admin/', include(admin.site.urls)), url(r'^api/$', redirect_to, { 'url': '/api/v1' }, name='api'), (r'^api/v1/', include('api.urls')), (r'^search/lookup/$', 'search.views.search_lookup'), (r'^search/$', search_view_factory( view_class=SearchView, searchqueryset=SearchQuerySet(), form_class=ModelSearchForm )), (r'^i18n/', include('django.conf.urls.i18n')), url(r'^faq/$', 'django.views.generic.simple.direct_to_template', {'template': 'faq.html'}, name="faq" ), url(r'^aviso-legal/$', 'django.views.generic.simple.direct_to_template', {'template': 'aviso-legal.html'}, name="aviso-legal" ), url(r'^politica-privacidad/$', 'django.views.generic.simple.direct_to_template', {'template': 'politica-privacidad.html'},
url(r'^$', 'account.views.home', name='home'), url(r'^micro/$', 'public.views.micro'), url(r'^terms/$', 'public.views.terms'), url(r'^privacy/$', 'public.views.privacy'), url(r'^about/$', 'public.views.about'), url(r'^feedback/$', 'public.views.feedback'), #url(r'^404/$', 'public.views.page404'), #url(r'^500/$', 'public.views.page500'), url(r'^account/', include('account.urls')), url(r'^comments/', include('django.contrib.comments.urls')), url(r'^posts/', include('post.urls')), url(r'^tags/', include('tags.urls')), url(r'^check/', include('comet.urls')), url(r'^search/', login_required(search_view_factory( #view_class=SearchView, view_class=search.views.CustumSearchView, form_class=search.forms.SearchForm, ))), url(r'^search_ajax/', login_required(search_view_factory( #view_class=SearchView, template='search/search_ajax.html', view_class=search.views.CustumSearchView, form_class=search.forms.SearchForm, ))), url(r'^tag/', login_required(search_view_factory( #view_class=SearchView, template='search/search_tags.html', view_class=SearchView, form_class=search.forms.TagSearchForm, ))), url(r'^auto/', 'search.views.auto_complete'),
sqs = SearchQuerySet() urlpatterns = patterns('', # Example: # (r'^theyworkforaz/', include('theyworkforaz.foo.urls')), # Uncomment the admin/doc line below and add 'django.contrib.admindocs' # to INSTALLED_APPS to enable admin documentation: (r'^admin/doc/', include('django.contrib.admindocs.urls')), (r'^admin/', include(admin.site.urls)), (r'^images/(.*)$', 'django.views.static.serve', {'document_root': os.path.join(settings.PROJECT_PATH, 'media/images')}, 'images'), (r'^stylesheets/(.*)$', 'django.views.static.serve', {'document_root': os.path.join(settings.PROJECT_PATH, 'media/stylesheets')}), (r'^js/(.*)$', 'django.views.static.serve', {'document_root': os.path.join(settings.PROJECT_PATH, 'media/js')}), (r'^', include('reps.urls')), (r'^search/', include('haystack.urls')), (r'^accounts/', include('registration.urls')), (r'^', include('django.contrib.auth.urls')), ) urlpatterns += patterns('haystack.views', url(r'^search/whole$', search_view_factory( view_class=TWFASearchView, searchqueryset=sqs, form_class=SearchForm ), name='haystack_search'), ) def login_on_activation(sender, user, request, **kwargs): user.backend='django.contrib.auth.backends.ModelBackend' login(request,user) user_activated.connect(login_on_activation)
# Uncomment the admin/doc line below to enable admin documentation: # url(r'^admin/doc/', include('django.contrib.admindocs.urls')), # Uncomment the next line to enable the admin: url(r'^admin/', include(admin.site.urls)), url(r'^$', IndexView.as_view(),name="index"), url(r'^list/$', LinkListView.as_view(paginate_by=settings.RESULTS_PER_PAGE),name="list"), url(r'^favorite/$', login_required(FavoriteListView.as_view(paginate_by=settings.RESULTS_PER_PAGE)),name="favorite"), url(r'^detail/([-\w]+)-(?P<pk>\d+)/$',LinkDetailView.as_view(model=Link),name="detail"), url(r'^submit/$',LinkCreateView.as_view(model=Link,form_class=LinkSubmitForm,template_name='app/link_submit.html'),name="submit"), url(r'^search/$', search_view_factory( view_class=SearchView2, template='app/link_list.html', form_class=LinkSearchForm2, ), name='haystack_search'), url(r'^%s/' % settings.DAJAXICE_MEDIA_PREFIX, include('dajaxice.urls')), url(r'^contact/', include('contact_form.urls',namespace='contact_form',app_name='contact_form')), url(r'', include('social_auth.urls')), url(r'^login/$', TemplateView.as_view(template_name="app/login.html"),name="login"), url(r'^about/$', TemplateView.as_view(template_name="app/about.html"),name="about"), url(r'^logout/$', 'django.contrib.auth.views.logout', {'next_page': '/'}, name='auth_logout'), url(r'^register/$', TemplateView.as_view(template_name="app/register.html"),name="register"), url(r'^login-error/$', TemplateView.as_view(template_name="app/login_failure.html"),name="login-error"), url(r'^feed/rss/latest/$', RssLatestLinksFeed()), url(r'^comments/', include('django.contrib.comments.urls')),
def as_view(cls, *args, **kwargs): return haystack_views.search_view_factory(view_class=cls, *args, **kwargs)
url(r'^details.lasso/$', gcd_views.redirect.issue), url(r'^coverview.lasso/$', gcd_views.redirect.issue_cover), url(r'^daily_covers.lasso/$', gcd_views.redirect.daily_covers), url(r'^search.lasso/$', gcd_views.redirect.search), ] # haystack search sqs = GcdSearchQuerySet().facet('facet_model_name').facet('country') \ .facet('language').facet('publisher').facet('feature')\ .date_facet('date', start_date=date(1000, 1, 1), end_date=date(3000, 1, 1), gap_by='year') urlpatterns += [ url(r'^searchNew/', search_view_factory(view_class=PaginatedFacetedSearchView, form_class=FacetedSearchForm, searchqueryset=sqs), name='haystack_search'), ] urlpatterns += [ url( r'^international_stats/$', bv.RedirectView.as_view(url='/international_stats_language/', permanent=True)), url('^covers_for_replacement.lasso/$', bv.RedirectView.as_view(url='/covers_to_replace/', permanent=True)), url('^index.lasso/$', bv.RedirectView.as_view(url='/', permanent=True)), url('^donate.lasso/$', bv.RedirectView.as_view(url='/donate/', permanent=True)), url(r'^graphics/covers/', bv.RedirectView.as_view(url=None,
from django.conf.urls import patterns, include, url from haystack.views import SearchView, search_view_factory from haystack.forms import ModelSearchForm from haystack.query import SearchQuerySet from haystack.views import SearchView sqs = SearchQuerySet() urlpatterns = patterns('haystack.views', url(r'^$', search_view_factory( view_class=SearchView, template='search/search.html', searchqueryset=sqs, form_class=ModelSearchForm ), name='haystack_search'), )
class SearchViewTestCase(TestCase): def setUp(self): super(SearchViewTestCase, self).setUp() mock_index_site = SearchSite() mock_index_site.register(MockModel) mock_index_site.register(AnotherMockModel) # Stow. self.old_site = haystack.site haystack.site = mock_index_site self.old_engine = getattr(settings, 'HAYSTACK_SEARCH_ENGINE') settings.HAYSTACK_SEARCH_ENGINE = 'dummy' def tearDown(self): haystack.site = self.old_site settings.HAYSTACK_SEARCH_ENGINE = self.old_engine super(SearchViewTestCase, self).tearDown() def test_search_no_query(self): response = self.client.get(reverse('haystack_search')) self.assertEqual(response.status_code, 200) def test_search_query(self): response = self.client.get(reverse('haystack_search'), {'q': 'hello world'}) self.assertEqual(response.status_code, 200) self.assertEqual(len(response.context[-1]['page'].object_list), 1) self.assertEqual( response.context[-1]['page'].object_list[0].content_type(), 'haystack.dummymodel') self.assertEqual(response.context[-1]['page'].object_list[0].pk, 1) def test_invalid_page(self): response = self.client.get(reverse('haystack_search'), { 'q': 'hello world', 'page': '165233' }) self.assertEqual(response.status_code, 404) def test_empty_results(self): sv = SearchView() sv.request = HttpRequest() sv.form = sv.build_form() self.assert_(isinstance(sv.get_results(), EmptySearchQuerySet)) def test_initial_data(self): sv = SearchView(form_class=InitialedSearchForm) sv.request = HttpRequest() form = sv.build_form() self.assert_(isinstance(form, InitialedSearchForm)) self.assertEqual(form.fields['q'].initial, 'Search for...') self.assertEqual( form.as_p(), u'<p><label for="id_q">Search:</label> <input type="text" name="q" value="Search for..." id="id_q" /></p>' ) def test_thread_safety(self): exceptions = [] def threaded_view(queue, view, request): import time time.sleep(2) try: inst = view(request) queue.put(request.GET['name']) except Exception, e: exceptions.append(e) raise class ThreadedSearchView(SearchView): def __call__(self, request): print "Name: %s" % request.GET['name'] return super(ThreadedSearchView, self).__call__(request) view = search_view_factory(view_class=ThreadedSearchView) queue = Queue.Queue() request_1 = HttpRequest() request_1.GET = {'name': 'foo'} request_2 = HttpRequest() request_2.GET = {'name': 'bar'} th1 = Thread(target=threaded_view, args=(queue, view, request_1)) th2 = Thread(target=threaded_view, args=(queue, view, request_2)) th1.start() th2.start() th1.join() th2.join() foo = queue.get() bar = queue.get() self.assertNotEqual(foo, bar)
from haystack.views import search_view_factory from search.query import sqs from search.forms import PliableFacetedSearchForm from search.views import (BetterFacetedSearchView, AutocompleteView, AnalyzerView, SearchExportView) from cjdata.views import (IndexView, DatasetDetailView, CategoryDatasetsView, StateDatasetsView, DatasetsExportView, CategoryDatasetsExportView, StatesExportView) urlpatterns = patterns( '', url(r'^export/all/$', DatasetsExportView.as_view(), name='datasets-export'), url(r'^export/category/(?:(?P<category>[\w-]+)/)(?:(?P<subcategory>[\w-]+)/)?$', CategoryDatasetsExportView.as_view(), name='datasets-by-category-export'), url(r'^export/location/(?P<location>[\w\s]+)/', StatesExportView.as_view(), name='datasets-by-location-export'), url(r'^data/(?P<uuid>[a-f0-9-]{32,36})/$', DatasetDetailView.as_view(), name='dataset-detail'), url(r'^category/(?:(?P<category>[\w-]+)/)(?:(?P<subcategory>[\w-]+)/)?$', CategoryDatasetsView.as_view(), name='datasets-by-category'), url(r'^location/(?P<location>[\w\s]+)/', StateDatasetsView.as_view(), name='datasets-by-location'), url(r'^search/$', search_view_factory(view_class=BetterFacetedSearchView, form_class=PliableFacetedSearchForm, searchqueryset=sqs), name='haystack_search'), url(r'search/export/$', SearchExportView.as_view(), name='search_export'), url(r'^search/analyze/', AnalyzerView.as_view(), name='search_analyze'), url(r'^autocomplete/$', AutocompleteView.as_view(), name='haystack_autocomplete'), url(r'^$', IndexView.as_view(), name='index') )
from django.conf.urls import patterns, include, url # handle static files locally from django.contrib.staticfiles.urls import staticfiles_urlpatterns from django.contrib import admin from django.views.decorators.cache import cache_page from django.views.generic.base import TemplateView, RedirectView from haystack.views import search_view_factory from haystack.query import SearchQuerySet from views import MultiSearchView, ContactView, get_list_view, get_browsing_view, autocomplete admin.autodiscover() sqs = SearchQuerySet().filter(is_listed_in_main_str="True") sqs.order_by('score') search_inst = search_view_factory(view_class=MultiSearchView, searchqueryset=sqs, template='search-results.html') """ Django urls handler """ urlpatterns = patterns('', url(r'^$', TemplateView.as_view(template_name="landing.html")), url(r'^(?i)autocomplete/?$', autocomplete, name="autocomplete"), url(r'^(?i)search$', search_inst, name="haystack_search"), url(r'^(?i)list$', get_list_view), url(r'^(?i)browse$', get_browsing_view), url(r'^(?i)concepts/((?P<anything>.*))', RedirectView.as_view(url="/graphs/concepts/%(anything)s", query_string=True), name='concepts'), url(r'^(?i)graphs/', include('apps.graph.urls', namespace="graphs") ), url(r'^user/', include('apps.user_management.urls', namespace='user') ), url(r'^roadmaps/', include('apps.roadmaps.urls', namespace='roadmaps')),
path('nuevapublicacion/', views.nuevapublicacion, name='nuevapublicacion'), url('mispublicaciones/', views.mispublicaciones, name='mispublicaciones'), url(r'^verpublicacion/(?P<pk>[0-9]+)/$', views.verpublicacion, name='verpublicacion'), url(r'^editarpublicacion/(?P<pk>[0-9]+)/$', views.editarpublicacion, name='editarpublicacion'), url(r'^solicitarcontacto/(?P<pk>[0-9]+)/$', views.solicitarcontacto, name='solicitarcontacto'), url(r'^eliminarpublicacion/(?P<pk>[0-9]+)/$', views.eliminarpublicacion, name='eliminarpublicacion'), url(r'^search/$', search_view_factory(view_class=SearchView, form_class=HighlightedSearchForm), name='search'), url( r'^robots\.txt/$', TemplateView.as_view(template_name='robots.txt', content_type='text/plain')), url(r'^comentariopublicacion/(?P<pk>[0-9]+)/$', views.comentariopublicacion, name='comentariopublicacion'), url(r'^verpublicacion/(?P<pk>[0-9]+)/versolicitudes/$', views.versolicitudes, name='versolicitudes'), url(r'^eliminarsolicitud/(?P<pk>[0-9]+)/$', views.eliminarsolicitud, name='eliminarsolicitud'), url(r'^aceptarsolicitud/(?P<pk>[0-9]+)/$',
FEED_CACHE_TIME = getattr(settings, 'FEED_CACHE_SECONDS', 60*15) urlpatterns = patterns('', url( regex = '^$', view = cache_page(HomepageView.as_view(template_name='homepage.html'), STANDARD_CACHE_TIME), kwargs = {}, name = 'homepage', ), (r'^articles/', include('source.articles.urls')), (r'^code/', include('source.code.urls')), (r'^people/', include('source.people.urls.people')), (r'^organizations/', include('source.people.urls.organizations')), url( regex = '^search/$', view = search_view_factory(view_class=SourceSearchView, form_class=SearchForm, searchqueryset=SearchQuerySet().order_by('django_ct')), kwargs = {}, name = 'haystack_search', ), url( regex = '^clear-cache/$', view = ClearCache.as_view(), kwargs = {}, name = 'clear_cache', ), url( regex = '^rss/$', view = cache_page(ArticleFeed(), FEED_CACHE_TIME), kwargs = {}, name = 'homepage_feed', ),
(r'^$', 'views.index'), (r'^sentry/', include('sentry.urls')), (r'^serie/', include('serie.urls.obj')), (r'^series/', include('serie.urls.entity')), (r'^admin/doc/', include('django.contrib.admindocs.urls')), (r'^admin/', include(admin.site.urls)), url(r'^api/$', 'django.views.generic.simple.direct_to_template', {'template': 'api.html'}, name="api"), (r'^api/v1', include('serie.urls.api')), (r'^blog/', include('blog.urls')), (r'^search/lookup/$', 'search.views.search_lookup'), (r'^search/$', search_view_factory(view_class=SearchView, searchqueryset=SearchQuerySet(), form_class=ModelSearchForm)), (r'^i18n/', include('django.conf.urls.i18n')), url(r'^faq/$', 'django.views.generic.simple.direct_to_template', {'template': 'faq.html'}, name="faq"), # Usuarios, invitaciones, registros, avatar, etc (r'^accounts/', include('invitation.urls')), (r'^accounts/profile/$', 'userdata.views.view_profile'), url(r'^accounts/register/$', register, { 'form_class': RegistrationFormTermsOfService, 'backend': 'invitation.backends.InvitationBackend', },
#-- encoding: utf-8 -- from django.conf.urls.defaults import patterns, url from haystack.views import search_view_factory import views import ajax urlpatterns = patterns('', url(r'^homepage/ajax/slider/bestof/$', ajax.slider_bestof, name='i4p-homepage-ajax-slider-bestof'), url(r'^homepage/ajax/slider/latest/$', ajax.slider_latest, name='i4p-homepage-ajax-slider-latest'), url(r'^homepage/ajax/slider/commented/$', ajax.slider_most_commented, name='i4p-homepage-ajax-slider-commented'), url(r'^history/check_version/(?P<pk>[\d]+)$', views.VersionActivityCheckView.as_view(), name='history-check-version'), url(r'^search/', search_view_factory(view_class=views.SearchView), name='i4p-search'), url(r'^location/(?P<location_id>\d+)', views.LocationEditView.as_view(), name='i4p-location-edit'), url(r'^locations/$', views.LocationListView.as_view(), name='i4p-location-list'), url(r'^locations/missing/(?P<missing_field_name>\w+)$', views.LocationListView.as_view(), name='i4p-location-missing-list'), )