django-eav2/tests/models.py

43 lines
974 B
Python
Raw Permalink Normal View History

2010-09-27 13:28:52 +00:00
from django.db import models
2017-09-05 10:01:20 +00:00
from eav.decorators import register_eav
2010-09-27 13:28:52 +00:00
2017-09-05 10:01:20 +00:00
class Patient(models.Model):
2010-09-27 13:28:52 +00:00
name = models.CharField(max_length=12)
example = models.ForeignKey(
'ExampleModel', null=True, blank=True, on_delete=models.PROTECT)
2010-09-27 13:28:52 +00:00
def __str__(self):
return self.name
def __repr__(self):
2010-09-27 13:28:52 +00:00
return self.name
2010-09-27 13:28:52 +00:00
class Encounter(models.Model):
num = models.PositiveSmallIntegerField()
2018-04-06 11:59:51 +00:00
patient = models.ForeignKey(Patient, on_delete=models.PROTECT)
2010-09-27 13:28:52 +00:00
def __str__(self):
2010-09-27 13:28:52 +00:00
return '%s: encounter num %d' % (self.patient, self.num)
def __repr__(self):
return self.name
@register_eav()
2015-08-16 04:30:42 +00:00
class ExampleModel(models.Model):
name = models.CharField(max_length=12)
def __unicode__(self):
return self.name
2018-07-13 14:06:21 +00:00
@register_eav()
class M2MModel(models.Model):
name = models.CharField(max_length=12)
models = models.ManyToManyField(ExampleModel)
def __unicode__(self):
2018-07-20 11:55:47 +00:00
return self.name