summaryrefslogtreecommitdiff
path: root/django/contrib/contenttypes/checks.py
blob: 890859505a075cae9536c004e9bff5dc7810a89e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# -*- coding: utf-8 -*-
from __future__ import unicode_literals

from django.utils import six
from django.apps import apps


def check_generic_foreign_keys(**kwargs):
    from .fields import GenericForeignKey

    errors = []
    fields = (obj
        for cls in apps.get_models()
        for obj in six.itervalues(vars(cls))
        if isinstance(obj, GenericForeignKey))
    for field in fields:
        errors.extend(field.check())
    return errors