Source code for nested_admin.tests.gfk.models

from __future__ import unicode_literals

from django.contrib.contenttypes.fields import GenericRelation, GenericForeignKey
from django.contrib.contenttypes.models import ContentType
from django.db import models
from django.db.models import ForeignKey, CASCADE
from nested_admin.tests.compat import python_2_unicode_compatible


[docs]@python_2_unicode_compatible class GFKB(models.Model): name = models.CharField(max_length=255) position = models.PositiveIntegerField() content_type = ForeignKey(ContentType, on_delete=CASCADE) object_id = models.PositiveIntegerField() content_object = GenericForeignKey() class Meta: ordering = ['object_id', 'position'] def __str__(self): parts = ["%s[%d]" % (self.name, self.position)] if self.content_object: parts.insert(0, "%s" % self.content_object) return "/".join(parts)
[docs]@python_2_unicode_compatible class GFKA(models.Model): slug = models.CharField(max_length=255) position = models.PositiveIntegerField() content_type = ForeignKey(ContentType, on_delete=CASCADE) object_id = models.PositiveIntegerField() content_object = GenericForeignKey() b_set = GenericRelation(GFKB) class Meta: ordering = ['object_id', 'position'] def __str__(self): parts = ["%s[%d]" % (self.slug, self.position)] if self.content_object: parts.insert(0, "%s" % self.content_object) return "/".join(parts)
[docs]@python_2_unicode_compatible class GFKRoot(models.Model): slug = models.CharField(max_length=255) a_set = GenericRelation(GFKA) def __str__(self): return self.slug