diff options
Diffstat (limited to 'ishtar_common/models_rest.py')
-rw-r--r-- | ishtar_common/models_rest.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/ishtar_common/models_rest.py b/ishtar_common/models_rest.py new file mode 100644 index 000000000..7d321ca92 --- /dev/null +++ b/ishtar_common/models_rest.py @@ -0,0 +1,32 @@ +from django.contrib.auth.models import User +from django.contrib.contenttypes.models import ContentType +from django.contrib.gis.db import models + +from ishtar_common.utils import ugettext_lazy as _ + + +class ApiUser(models.Model): + user_ptr = models.OneToOneField( + User, primary_key=True, related_name="apiuser", on_delete=models.CASCADE + ) + ip = models.GenericIPAddressField(verbose_name=_("IP")) + + class Meta: + verbose_name = _("Api - User") + verbose_name_plural = _("Api - Users") + + def __str__(self): + return self.user_ptr.username + + +class ApiSearchModel(models.Model): + user = models.ForeignKey(ApiUser, on_delete=models.CASCADE) + content_type = models.ForeignKey(ContentType, on_delete=models.CASCADE) + limit_query = models.TextField( + verbose_name=_("Limit query"), blank=True, null=True, + help_text=_("Search query add to each request") + ) + + class Meta: + verbose_name = _("Api - Search model") + verbose_name_plural = _("Api - Search models") |