コード例 #1
0
    query_size_min = 2


class AutocompleteUrlSimpleWithExtra(AutocompleteUrlSimple):
    query_size = 2
    query_size_min = 2

    def items(self, query=None, **kwargs):
        logger.debug("I am exploiting the kwargs [%s]", kwargs)
        if 'extra_argument' in kwargs and kwargs['extra_argument'] == 'moo':
            return [{'value': 'moo', 'label': 'moo'}]
        return super(AutocompleteUrlSimple, self).items(query, **kwargs)


# Registration
register(AutocompleteColor)
register(AutocompleteColorExtra)
register(AutocompleteColorShort)
register(AutocompletePerson)
register(AutocompletePersonExtra)
register(AutocompletePersonShort)
register(AutocompleteChoicesPages)
register(AutocompleteChoicesPagesOverride)
register(AutocompletePersonDomain)
register(AutocompleteCustomUrl)
register(AutocompleteTag)
register(AutocompleteContextTag)
# URL-proxy autocompletion
register(AutocompleteUrlSimple)
register(AutocompleteUrlConvert)
register(AutocompleteUrlConvertComplex)
コード例 #2
0
    def get_queryset(self):
        email = self.user.email
        _, domain = email.split('@')
        return Person.objects.filter(email__endswith=domain)


# Do not register this, it's for custom view demo
class HiddenAutocomplete(AutocompleteColor):
    query_size_min = 2


# Do not register this, it's for custom view demo
class HiddenAutocompleteURL(AutocompleteColor):
    query_size_min = 2
    url = '/stuff'


# Do not register this, it's for custom view demo
class HiddenAutocompleteURLReverse(AutocompleteColor):
    query_size_min = 2
    url = reverse_lazy('hidden-autocomplete')


# Registration
register(AutocompleteColor)
register(AutocompletePerson)
register(AutocompleteChoicesPages)
register(AutocompleteChoicesPagesOverride)
register(AutocompletePersonDomain)
register(AutocompleteCustomUrl)
コード例 #3
0
    def get_queryset(self):
        email = self.user.email
        _, domain = email.split('@')
        return Person.objects.filter(email__endswith=domain)


# Do not register this, it's for custom view demo
class HiddenAutocomplete(AutocompleteColor):
    query_size_min = 2


# Do not register this, it's for custom view demo
class HiddenAutocompleteURL(AutocompleteColor):
    query_size_min = 2
    url = '/stuff'


# Do not register this, it's for custom view demo
class HiddenAutocompleteURLReverse(AutocompleteColor):
    query_size_min = 2
    url = reverse_lazy('hidden-autocomplete')


# Registration
register(AutocompleteColor)
register(AutocompletePerson)
register(AutocompleteChoicesPages)
register(AutocompleteChoicesPagesOverride)
register(AutocompletePersonDomain)
register(AutocompleteCustomUrl)
コード例 #4
0
class AutocompleteUrlSkipItem(AutocompleteUrlSimple):

    data_key = 'data'

    def item(self, obj):
        if obj['label'] == 'first person':
            raise SkipItem
        return super().item(obj)

    def get_item_url(self, pk):
        return '{}{}'.format(getattr(settings, 'HTTP_HOST', ''),
                             reverse_lazy('url-proxy:atomic-item', args=[pk]))


# Registration
register(AutocompleteColor)
register(AutocompleteColorExtra)
register(AutocompleteColorShort)
register(AutocompletePerson)
register(AutocompleteLastNameStartsWith)
register(AutocompleteFirstNameEqualsIgnoreCase)
register(AutocompletePersonExtra)
register(AutocompletePersonShort)
register(AutocompleteChoicesPages)
register(AutocompleteChoicesPagesOverride)
register(AutocompletePersonDomain)
register(AutocompletePersonDomainSpecial)
register(AutocompleteCustomUrl)
register(AutocompleteTag)
register(AutocompleteContextTag)
# URL-proxy autocompletion
コード例 #5
0
    query_size_min = 2


class AutocompleteUrlSimpleWithExtra(AutocompleteUrlSimple):
    query_size = 2
    query_size_min = 2

    def items(self, query=None, **kwargs):
        logger.debug("I am exploiting the kwargs [%s]", kwargs)
        if 'extra_argument' in kwargs and kwargs['extra_argument'] == 'moo':
            return [{'value': 'moo', 'label': 'moo'}]
        return super(AutocompleteUrlSimple, self).items(query, **kwargs)


# Registration
register(AutocompleteColor)
register(AutocompleteColorExtra)
register(AutocompleteColorShort)
register(AutocompletePerson)
register(AutocompletePersonExtra)
register(AutocompletePersonShort)
register(AutocompleteChoicesPages)
register(AutocompleteChoicesPagesOverride)
register(AutocompletePersonDomain)
register(AutocompletePersonDomainSpecial)
register(AutocompleteCustomUrl)
register(AutocompleteTag)
register(AutocompleteContextTag)
# URL-proxy autocompletion
register(AutocompleteUrlSimple)
register(AutocompleteUrlConvert)
コード例 #6
0
    choices = ["choice{}".format(i) for i in range(200)]


class AutocompleteChoicesPagesOverride(AutocompleteChoicesPages):
    page_size = 30


class AutocompletePerson(AgnocompleteModel):
    model = Person
    fields = ['first_name', 'last_name']


# Special: not integrated into the registry (yet)
class AutocompletePersonQueryset(AgnocompleteModel):
    fields = ['first_name', 'last_name']

    def get_queryset(self):
        return Person.objects.filter(email__contains='example.com')


# Special: not integrated into the registry (yet)
class AutocompletePersonMisconfigured(AgnocompleteModel):
    fields = ['first_name', 'last_name']


# Registration
register(AutocompleteColor)
register(AutocompletePerson)
register(AutocompleteChoicesPages)
register(AutocompleteChoicesPagesOverride)
コード例 #7
0
from agnocomplete.register import register
from agnocomplete.core import AgnocompleteChoices, AgnocompleteModel
from .models import Index
from django.utils.functional import cached_property
from copy import copy
import logging

logger = logging.getLogger(__name__)
_omni = []


class Search(AgnocompleteModel):
    model = Index
    fields = ['recname', 'keywords']
    value_key = 'recname'
    label_key = 'recname'

    def item(self, current_item):
        return dict(
            value=current_item.recname,
            label=current_item.recname,
        )


# Register models
register(Search)