a django app that provides a couple of fontawesome/django related utilities.
Project description
django-fontawesome is a Django app that provides a couple of Fontawesome/Django related utilities, namely:
an IconField to associate Fontawesome icons with model instances
templatetags to render Fontawesome icons
also included:
admin support for the IconField
fr locale translation
Requirements
PyYAML
Select2 (included)
JQuery (uses django’s jquery in admin panel)
Settings
By default, django-fontawesome ships with and uses the lastest fontawesome release. You can configure django-fontawesome to use another release/source/cdn by specifying:
# default uses locally shipped version at 'fontawesome/css/font-awesome.min.css' FONTAWESOME_CSS_URL = '//cdn.example.com/fontawesome-min.css' # absolute url FONTAWESOME_CSS_URL = 'myapp/css/fontawesome.min.css' # relative url
You can also tell it the fontawesome prefix, which as of right now is ‘fa’, using:
FONTAWESOME_PREFIX = 'bg' # default is 'fa'
Installation / Usage
Install via pip:
pip install django-fontawesome
Add ‘fontawesome’ to your installed apps setting like this:
INSTALLED_APPS = ( ... 'fontawesome', )
Import and use the IconField:
from fontawesome.fields import IconField class Category(models.Model): ... icon = IconField()
Here’s what the widget looks like in the admin panel:
You can then render the icon in your template like this:
{% for category in categories.all %} {% if category.icon %} {{ category.icon.as_html }} {% endif %} {% endfor %}
- django-fontawesome ships with two template tags, fontawesome_stylesheet and fontawesome_icon.
the former inserts a stylesheet link with a pre-configured href according to the FONTAWESOME_CSS_URL setting
the latter renders icons, and accepts the following optional keywords arguments: large, spin, fixed, li, border: (true/false), rotate: (90/180/270), title: (string)
you can also colorize an icon using the color='red' keyword argument to the fontawesome_icon template tag
example usage:
{% load fontawesome %} <head> {% fontawesome_stylesheet %} ... </head> {% fontawesome_icon 'user' color='red' %} {% fontawesome_icon 'star' large=True spin=True %} <ul class="fa-ul"> <li> {% fontawesome_icon 'home' rotate=90 li=True %} One</li> </ul>
profit!!!
changelog
0.3.1 - Dec 19, 2016
added unicode literals import for cases where icon title attribute uses non ascii chars
Nov 28, 2016
now suppots django 1.8+
python3 supported, supposedly
relative import issues fixed
updated icon mapping for fontawesome 4.7
tabular and stacked inlines now supported
other small fixes
new PyPI release (0.3)
Jan 28, 2016
updated icon mapping file (icons.yml) for fontawesome 4.5.0
new keyword arg for fontawesome_icon template tag: title
Dec 17, 2015
Updated locally shipped fontawesome to 4.5.0
fontawesome_icon’s output is now marked safe
Sep 11, 2015
Updated locally shipped fontawesome to 4.4.0
Feb 27, 2015
added two new keyword argument to the fontawesome_icon template tag, color and border
FONTAWESOME_PREFIX setting is now taken into account when rendering icons using the fontawesome_icon template tag
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.