diff options
Diffstat (limited to 'tests/postgres_tests/models.py')
| -rw-r--r-- | tests/postgres_tests/models.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/postgres_tests/models.py b/tests/postgres_tests/models.py index 24addea358..d94eb90d4a 100644 --- a/tests/postgres_tests/models.py +++ b/tests/postgres_tests/models.py @@ -3,6 +3,7 @@ from django.db import connection, models from .fields import ( ArrayField, BigIntegerRangeField, DateRangeField, DateTimeRangeField, FloatRangeField, HStoreField, IntegerRangeField, JSONField, + SearchVectorField, ) @@ -78,6 +79,37 @@ class CharFieldModel(models.Model): class TextFieldModel(models.Model): field = models.TextField() + def __str__(self): + return self.field + + +# Scene/Character/Line models are used to test full text search. They're +# populated with content from Monty Python and the Holy Grail. +class Scene(models.Model): + scene = models.CharField(max_length=255) + setting = models.CharField(max_length=255) + + def __str__(self): + return self.scene + + +class Character(models.Model): + name = models.CharField(max_length=255) + + def __str__(self): + return self.name + + +class Line(PostgreSQLModel): + scene = models.ForeignKey('Scene', models.CASCADE) + character = models.ForeignKey('Character', models.CASCADE) + dialogue = models.TextField(blank=True, null=True) + dialogue_search_vector = SearchVectorField(blank=True, null=True) + dialogue_config = models.CharField(max_length=100, blank=True, null=True) + + def __str__(self): + return self.dialogue or '' + class RangesModel(PostgreSQLModel): ints = IntegerRangeField(blank=True, null=True) |
