def test_overrides(self): site = AutocompleteSite(limit=1) site.register('user', model=User, search_fields=['username']) request = request_factory.get("/", {"q": "a"}) response = site(request, 'user') self.assertEquals(1, len(simplejson.loads(response.content)))
def test_unregister(self): site = AutocompleteSite() site.register('user', model=User) self.assertEquals(1, len(site._registry)) site.unregister('user') self.assertEquals(0, len(site._registry)) self.assertRaises(NotRegistered, site.unregister, 'user')
def test_register(self): site = AutocompleteSite() site.register('user', model=User) self.assertTrue('user' in site._registry) self.assertEquals('LabeledAutocomplete', site._registry['user'][0].__name__) self.assertEquals({'model': User}, site._registry['user'][1]) self.assertRaises(AlreadyRegistered, site.register, 'user', model=User)
from django.conf.urls.defaults import * from tagging.models import Tag from views import AlbumListView, ImageListView, UpdateImage, UpdateAlbum, CreateImage, CreateAlbum, DeleteImage, DeleteAlbum, ImageView from fancy_autocomplete.views import AutocompleteSite autocomletes = AutocompleteSite() autocomletes.register( 'tag', queryset=Tag.objects.all(), search_fields=('name',), limit=10, lookup='istartswith', ) urlpatterns = patterns('imagestore.views', url(r'^$', AlbumListView.as_view(), name='index'), url(r'^album/add/$', CreateAlbum.as_view(), name='create-album'), url(r'^album/(?P<album_id>\d+)/$', ImageListView.as_view(), name='album'), url(r'^album/(?P<pk>\d+)/edit/$', UpdateAlbum.as_view(), name='update-album'), url(r'^album/(?P<pk>\d+)/delete/$', DeleteAlbum.as_view(), name='delete-album'), url(r'^tag/(?P<tag>[^/]+)/$', ImageListView.as_view(), name='tag'), url(r'^user/(?P<username>\w+)/albums/', AlbumListView.as_view(), name='user'), url(r'^user/(?P<username>\w+)/$', ImageListView.as_view(), name='user-images'), url(r'^upload/$', CreateImage.as_view(), name='upload'),
from django.conf.urls.defaults import * from tagging.models import Tag from views import AlbumListView, ImageListView, UpdateImage, UpdateAlbum, CreateImage, CreateAlbum, DeleteImage, DeleteAlbum, ImageView from fancy_autocomplete.views import AutocompleteSite autocomletes = AutocompleteSite() autocomletes.register( 'tag', queryset=Tag.objects.all(), search_fields=('name', ), limit=10, lookup='istartswith', ) urlpatterns = patterns( 'imagestore.views', url(r'^$', AlbumListView.as_view(), name='index'), url(r'^album/add/$', CreateAlbum.as_view(), name='create-album'), url(r'^album/(?P<album_id>\d+)/$', ImageListView.as_view(), name='album'), url(r'^album/(?P<pk>\d+)/edit/$', UpdateAlbum.as_view(), name='update-album'), url(r'^album/(?P<pk>\d+)/delete/$', DeleteAlbum.as_view(), name='delete-album'), url(r'^tag/(?P<tag>[^/]+)/$', ImageListView.as_view(), name='tag'), url(r'^user/(?P<username>\w+)/albums', AlbumListView.as_view(), name='user'), url(r'^user/(?P<username>\w+)/$', ImageListView.as_view(),
from django.conf.urls.defaults import * from django.views.generic.simple import direct_to_template from django.contrib import admin from django.contrib.auth.models import User from fancy_autocomplete.views import AutocompleteSite, LabeledAutocomplete, ObjectAutocomplete # Define a vanilla site autocompletes = AutocompleteSite() # Register a simple autocomplete with the site autocompletes.register( 'user', queryset = User.objects.filter(is_active=True, is_superuser=False), search_fields = ('username', 'email', 'first_name', 'last_name'), limit = 5, ) # Define an autocomplete site that may only be used by authenticated users class LoginSite(AutocompleteSite): def is_authorized(self, request): return request.user.is_authenticated() authenticated_autocompletes = LoginSite() # Create a dict autocomplete that returns first and last names for use # in a client-side label class UserDictAutocomplete(ObjectAutocomplete):