Skip to content
This repository has been archived by the owner on Mar 3, 2022. It is now read-only.

Autocompletion for django-tagging. Rebuild for Django 2.2. Original by Ludwik Trammer.

License

Notifications You must be signed in to change notification settings

DeeJeezz/django-tagging-autocomplete-new

Repository files navigation

django-tagging-autocomplete-new

pypi github_version license wheel python

django-tagging-autocomplete-new is a jquery based autocomplete solution for django-tagging.

This is fixed version of django-tagging-autocomplete by @ludwiktrammer for Django 2.2.

Requirements

django-tagging

Setup

  1. Install package from PyPI:
pip install django-tagging-autocomplete-new
  1. Add tagging and tagging-autocomplete-new to installed apps in your's project's settings:
INSTALLED_APPS = [
    ...
    'tagging',
    'tagging_autocomplete_new',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.sites',
    'django.contrib.staticfiles',
    ...
]
  1. Add route to your project's urls.py file:
path('tagging_autocomplete_new/', include('tagging_autocomplete_new.urls'))

Usage

The Model Field

You can use TagAutocompleteField() to enable autocompletion right in your models.py. In most cases this is the easiest solution:

    from django.db import models
    from tagging_autocomplete_new.models import TagAutocompleteField

    class SomeModel(models.Model):
            tags = TagAutocompleteField()

The Form Widget

Alternatively you can use the TagAutocomplete() form widget while creating your form:

    from django import forms
    from tagging.forms import TagField
    from tagging_autocomplete_new.widgets import TagAutocomplete

    class SomeForm(forms.Form):
        tags = TagField(widget=TagAutocomplete())

Optional settings

By default the maximum number of results suggested by the autocompletion is 100. You can modify this number by adding to your settings.py project file the TAGGING_AUTOCOMPLETE_MAX_RESULTS constant. For example:

    TAGGING_AUTOCOMPLETE_MAX_RESULTS = 5

By default autocompletion suggests tags that start with a given term. In case you need to show ones that contain the given term, set TAGGING_AUTOCOMPLETE_SEARCH_CONTAINS to True. For example:

    TAGGING_AUTOCOMPLETE_SEARCH_CONTAINS = True

By default suggestions are shown right after you enter first character. You can configure this behaviour using TAGGING_AUTOCOMPLETE_MIN_LENGTH. For example:

    TAGGING_AUTOCOMPLETE_MIN_LENGTH = 3