Skip to main content

Autosuggestions for django-taggit

Project description

Disclaimer: This project is unmaintained since I don’t use it myself anymore and I did not find a maintainer within the user base so far. However, I’m happy to accept pull requests!

* Credits *

This project is directly based on those projects: * Alex Gaynor, https://github.com/alex/django-taggit * Ludwik Trammer, http://code.google.com/p/django-tagging-autocomplete/ * Jeremy Epstein, https://github.com/Jaza/django-taggit-autocomplete * Flavio Curella, https://github.com/fcurella/django-taggit-autocomplete * Drew Wilson, http://code.drewwilson.com/entry/autosuggest-jquery-plugin

* Installation *
  • Add “taggit_autosuggest” to your INSTALLED_APPS in your project settings

  • Run “python manage.py collectstatic” in your django site dir.

  • Add the following line to your project’s urls.py file:

    (r’^taggit_autosuggest/’, include(‘taggit_autosuggest.urls’)),

* Settings *
TAGGIT_AUTOSUGGEST_STATIC_BASE_URL:

Instead of collecting and serving the static files directly, you can also set this variable to your static base URL somewhere else.

TAGGIT_AUTOSUGGEST_MAX_SUGGESTIONS (Defaults to 20):

The amount of suggestions is limited, you can raise or lower the limit of default 20 using this setting.

TAGGIT_AUTOSUGGEST_CSS_FILENAME (Defaults to ‘autoSuggest.css’):
Set the CSS file which best fits your site elements.

The CSS file have to be in ‘jquery-autosuggest/css/’.

TAGGIT_AUTOSUGGEST_MODELS (Defaults to tuple(‘taggit’,’Tag’))

The Tag model used, if you happen to use Taggit custom tagging.

* Usage * To enable autosuggesting Tags, just let the tagged model use TaggableManager:

from django.db import models from taggit_autosuggest.managers import TaggableManager

class SomeModel(models.Model):

tags = TaggableManager()

To use autosuggesting Tags outside of Django Admin pages ensure that the static files are added to the template’s <head>, either hardcoded, e.g.

<link href=”{{ STATIC_URL }}jquery-autosuggest/css/autoSuggest-upshot.css”

type=”text/css” media=”all” rel=”stylesheet” />

<script type=”text/javascript”

src=”{{ STATIC_URL }}jquery-autosuggest/js/jquery.autoSuggest.minified.js”> </script>

or by adding the form/formset’s media attribute to the template’s context (this is what happens in Django Admin), e.g.

# In the view: context.update({‘media’: form.media}) # or however you add to the context

# In the template: {{ media }}

(Either way, of course, the template must also include a jQuery library.)

If Taggit custom tagging is used the autosuggested Tags can be filtered by attributes of the request object after the name filtering. To enable this the custom tag model should have a function called request_filter which takes a request object and returns a django.db.models.Q object, e.g.

from django.db import models

class MyTag(TagBase):

@staticmethod def request_filter(request):

return models.Q(…)

There’s a demo project using Grappelli bundled, you can run it and browse /admin/ using the username ‘demo’ and password ‘demo’.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_taggit_autosuggest-0.4.2.tar.gz (13.5 kB view details)

Uploaded Source

Built Distribution

django_taggit_autosuggest-0.4.2-py3-none-any.whl (19.3 kB view details)

Uploaded Python 3

File details

Details for the file django_taggit_autosuggest-0.4.2.tar.gz.

File metadata

File hashes

Hashes for django_taggit_autosuggest-0.4.2.tar.gz
Algorithm Hash digest
SHA256 0a0adb23cead8dfea0cf9e2c268f5ca7079e985d1f6db8c54702e4265ee38616
MD5 5d8e9994d40b6c2923f582fae4bc358f
BLAKE2b-256 f06ddb324a481667b60425db14f8d0ec70db1ade27e32e921859700ad9738185

See more details on using hashes here.

File details

Details for the file django_taggit_autosuggest-0.4.2-py3-none-any.whl.

File metadata

File hashes

Hashes for django_taggit_autosuggest-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e7c2d6f51708d947a099104f960771f86da7d224f9e979c7056aa43ff2d9958b
MD5 6c742c5f5576d2ceeab93460444f38e0
BLAKE2b-256 861689c4a3795b574b23b9e90bff2e4ab80a946fb2bf728eb287e157a56f185c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page