Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from django.db import models
- class Entity(models.Model):
- name = models.TextField(null=True, blank=True, default=None)
- details = models.TextField(null=True, blank=True, default=None)
- class EntityClosure(models.Model):
- ancestor = models.ForeignKey(Entity, related_name="dset")
- descendant = models.ForeignKey(Entity, related_name="aset")
- depth = models.PositiveSmallIntegerField()
- class Tag(Entity):
- def __str__(self):
- return self.name
- class TaggedEntity(models.Model):
- entity = models.ForeignKey(Entity,related_name="tags")
- tag = models.ForeignKey(Tag,related_name="entities")
- # Para testar
- if not Entity.objects.count():
- e = Entity.objects.create(name="teste")
- t1 = Tag.objects.create(name="Tag 1")
- t2 = Tag.objects.create(name="Tag 2")
- t11 = Tag.objects.create(name="Tag 1.1")
- EntityClosure.objects.create(ancestor=t1, descendant=t1, depth=0)
- EntityClosure.objects.create(ancestor=t2, descendant=t2, depth=0)
- EntityClosure.objects.create(ancestor=t11, descendant=t11, depth=0)
- EntityClosure.objects.create(ancestor=t1, descendant=t11, depth=1)
- TaggedEntity.objects.create(entity=e, tag=t11)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement