Skip to main content

An automated slug field for Django.

Project description

https://img.shields.io/coveralls/neithere/django-autoslug.svg https://img.shields.io/travis/neithere/django-autoslug.svg https://img.shields.io/pypi/format/django-autoslug.svg https://img.shields.io/pypi/status/django-autoslug.svg https://img.shields.io/pypi/v/django-autoslug.svg https://img.shields.io/pypi/pyversions/django-autoslug.svg https://img.shields.io/pypi/dd/django-autoslug.svg https://readthedocs.org/projects/django-autoslug/badge/?version=stable https://readthedocs.org/projects/django-autoslug/badge/?version=latest

Django-autoslug is a reusable Django library that provides an improved slug field which can automatically:

  1. populate itself from another field,

  2. preserve uniqueness of the value and

  3. use custom slugify() functions for better i18n.

The field is highly configurable.

Requirements

Python 2.7, 3.5 or PyPy.

Django 1.7.10 or higher.

It may be possible to successfully use django-autoslug in other environments but they are not tested.

Examples

A simple example:

from django.db.models import CharField, Model
from autoslug import AutoSlugField

class Article(Model):
    title = CharField(max_length=200)
    slug = AutoSlugField(populate_from='title')

More complex example:

from django.db.models import CharField, DateField, ForeignKey, Model
from django.contrib.auth.models import User
from autoslug import AutoSlugField

class Article(Model):
    title = CharField(max_length=200)
    pub_date = DateField(auto_now_add=True)
    author = ForeignKey(User)
    slug = AutoSlugField(populate_from=lambda instance: instance.title,
                         unique_with=['author__name', 'pub_date__month'],
                         slugify=lambda value: value.replace(' ','-'))

Documentation

See the complete documentation on ReadTheDocs. It is built automatically for the latest version.

Community

This application was initially created by Andy Mikhailenko and then improved by other developers. They are listed in AUTHORS.rst.

Please feel free to file issues and/or submit patches.

See CONTRIBUTING.rst for hints related to the preferred workflow.

Licensing

Django-autoslug is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

Django-autoslug is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program; see the file COPYING.LESSER. If not, see GNU licenses.

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

lc-django-autoslug-1.9.4.tar.gz (20.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lc_django_autoslug-1.9.4-py2.py3-none-any.whl (11.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file lc-django-autoslug-1.9.4.tar.gz.

File metadata

  • Download URL: lc-django-autoslug-1.9.4.tar.gz
  • Upload date:
  • Size: 20.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.6

File hashes

Hashes for lc-django-autoslug-1.9.4.tar.gz
Algorithm Hash digest
SHA256 c03dc813e35e83fce287489f7f10313f2215fc972bf3d10d788afe281cb83e81
MD5 5fd79335ff05016db6a3acaafcb4c157
BLAKE2b-256 03f28939ada7555d682e98fa6295c70629245c46502b844784d86fe8e67f8773

See more details on using hashes here.

File details

Details for the file lc_django_autoslug-1.9.4-py2.py3-none-any.whl.

File metadata

  • Download URL: lc_django_autoslug-1.9.4-py2.py3-none-any.whl
  • Upload date:
  • Size: 11.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.6

File hashes

Hashes for lc_django_autoslug-1.9.4-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 750e4bf6f2daae5cce72aa7f58c0bcd2323d222ec14fed4a531441949300a0ad
MD5 8dba7f8459bc7028ca400c0008b4bf9c
BLAKE2b-256 d4f0f4b6473a7e13990378af0a984dcdd7e8218476e6dbc5291aaab8d6287aa0

See more details on using hashes here.

Supported by

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