Login

ContentType template filter

Author:
asfaltboy
Posted:
December 31, 2013
Language:
Python
Version:
1.5
Tags:
template filter tag contenttypes contenttype GenericForeignKey
Score:
0 (after 0 ratings)

Custom template filter to retrieve a content type of a given model instance. Useful for ModelForms which want to set the content_type field (i.e: GenericForeignKey).

A usage example:

{% load helpers %}
{% with instance|content_type as ctype %}
    <input type="hidden" name="content_type" value="{{ ctype.pk }}">
{% endwith %}

Original idea from this stackoverflow answer

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# templatetags/helpers.py
from django import template
from django.contrib.contenttypes.models import ContentType

register = template.Library()

@register.filter
def content_type(obj):
    if not obj:
        return False
    return ContentType.objects.get_for_model(obj)

More like this

  1. django admin filter for GenericForeignKey field by dkoldyaev 3 months ago
  2. URL models by diverman 6 years, 9 months ago
  3. EditInline for GenericForeignKey by king 8 years, 2 months ago
  4. Manager method for limiting GenericForeignKey queries by zerok 7 years, 11 months ago
  5. improved generic foreign key manager by carljm 7 years, 10 months ago

Comments

Please login first before commenting.