A Django field that automatically generates random slugs.
Project description
Django field that automatically generates random slugs.
e.g. example.com/kEwD58P
Tested with Python 2.7, 3.3+ and Django 1.4+.
Getting it
To install django-randomslugfield:
$ pip install django-randomslugfield
Install
To enable randomslugfield in your project you need to add it to INSTALLED_APPS in your projects settings.py file:
INSTALLED_APPS = (
...
'randomslugfield',
...
)
Usage
Import RandomSlugField and use it in your model:
from django.db import models
from randomslugfield import RandomSlugField
class MyModel(models.Model):
slug = RandomSlugField(length=7)
The length argument is required.
Advanced Usage
By default randomslugfield generates its slug using these characters:
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
You can optionally exclude lowercase/uppercase/digits/vowels using exclude_lower=True, exclude_upper=True, exclude_digits=True, exclude_vowels=True.
You cannot exclude all characters.
Example:
class MyModel(models.Model):
slug = RandomSlugField(length=7, exclude_lower=True)
The total number of unique slugs is determined by characters^length.
62^9 = 13,537,086,546,263,552 possible slugs 62^8 = 218,340,105,584,896 possible slugs 62^7 = 3,521,614,606,208 possible slugs 62^6 = 56,800,235,584 possible slugs 62^5 = 916,132,832 possible slugs
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
Hashes for django-randomslugfield-0.3.0.zip
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8f5866d9383f020fb7f270a218ddc65b6a33d3833633a0c995c68f28cac59efb |
|
MD5 | 4516f4210a28d8c9e2dfcd9192949647 |
|
BLAKE2b-256 | 6c3dc50968b8910b1d842fd9acbb49f1fd22739ae43273a7e97d2172d87ca7fd |