Например, ваши приложения - app и app2, в приложении есть модели A, B, а в app2 - модели C, D.вы хотите видеть только app.A и app.B и app2.C
from django.db import models
class TaggedItem(models.Model):
tag = models.SlugField()
limit = models.Q(app_label = 'app', model = 'a') | models.Q(app_label = 'app', model = 'b') | models.Q(app_label = 'app2', model = 'c')
content_type = models.ForeignKey(ContentType, limit_choices_to = limit)
object_id = models.PositiveIntegerField()
content_object = generic.GenericForeignKey('content_type', 'object_id')
используйте limit_choices_to для ForeignKey.
проверьте документы django для деталей и объекты Q, app_label.вам нужно написать правильный app_label и модель.Это всего лишь фрагмент кода
плюс: я думаю, что вы пишете неправильно app_label.Это может помочь вам.
from django.contrib.contenttypes.models import ContentType
for c in ContentType.objects.all():
print(c.app_label, c.model)