README.rst 1.72 KB
Newer Older
1 2
django-taggit
=============
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

.. image:: https://jazzband.co/static/img/badge.svg
   :target: https://jazzband.co/
   :alt: Jazzband

.. image:: https://travis-ci.org/jazzband/django-taggit.svg?branch=master
    :target: https://travis-ci.org/jazzband/django-taggit

.. image:: https://codecov.io/gh/jazzband/django-taggit/coverage.svg?branch=master
    :target: https://codecov.io/gh/jazzband/django-taggit?branch=master

This is a `Jazzband <https://jazzband.co>`_ project. By contributing you agree
to abide by the `Contributor Code of Conduct
<https://jazzband.co/about/conduct>`_ and follow the `guidelines
<https://jazzband.co/about/guidelines>`_.
18 19

``django-taggit`` a simpler approach to tagging with Django.  Add ``"taggit"`` to your
20 21 22
``INSTALLED_APPS`` then just add a TaggableManager to your model and go:

.. code:: python
23 24 25 26 27 28 29 30 31 32 33

    from django.db import models

    from taggit.managers import TaggableManager

    class Food(models.Model):
        # ... fields here

        tags = TaggableManager()


34 35 36
Then you can use the API like so:

.. code:: python
37 38 39 40 41 42 43 44 45 46 47 48 49

    >>> apple = Food.objects.create(name="apple")
    >>> apple.tags.add("red", "green", "delicious")
    >>> apple.tags.all()
    [<Tag: red>, <Tag: green>, <Tag: delicious>]
    >>> apple.tags.remove("green")
    >>> apple.tags.all()
    [<Tag: red>, <Tag: delicious>]
    >>> Food.objects.filter(tags__name__in=["red"])
    [<Food: apple>, <Food: cherry>]

Tags will show up for you automatically in forms and the admin.

50
``django-taggit`` requires Django 1.11 or greater.
51

52
For more info check out the `documentation <https://django-taggit.readthedocs.io/en/latest/>`_.  And for questions about usage or
53
development you can contact the
54
`mailinglist <https://groups.google.com/group/django-taggit>`_.