30 lines
1.4 KiB
Python
30 lines
1.4 KiB
Python
from django.contrib.gis.db import models
|
|
from django.contrib.contenttypes.models import ContentType
|
|
from django.contrib.contenttypes.fields import GenericForeignKey
|
|
from django.contrib.auth import get_user_model
|
|
|
|
User = get_user_model()
|
|
# Create your models here.
|
|
|
|
class StatsLog(models.Model):
|
|
|
|
action_object_content_type = models.ForeignKey(
|
|
ContentType, blank=True,
|
|
null=True,
|
|
related_name='statslogs',
|
|
on_delete=models.CASCADE
|
|
)
|
|
action_object_object_id = models.CharField(max_length=255, blank=True, null=True)
|
|
action_object = GenericForeignKey('action_object_content_type', 'action_object_object_id')
|
|
user = models.ForeignKey(User, on_delete=models.DO_NOTHING, null=True)
|
|
anonymous = models.BooleanField('Usuario no registrado', null=True, blank=True)
|
|
ip_address = models.GenericIPAddressField('IP usuario', null=True, blank=True)
|
|
geo = models.PointField('Ubicación aproximada', null=True, blank=True )
|
|
contact = models.BooleanField('Empresa contactada', null=True, blank=True)
|
|
shop = models.BooleanField('Redirigido por botón "Comprar"', null=True, blank=True)
|
|
view = models.BooleanField('Redirigido por botón "Detalles"', null=True, blank=True)
|
|
|
|
# internal
|
|
created = models.DateTimeField('date of creation', auto_now_add=True)
|
|
updated = models.DateTimeField('date last update', auto_now=True)
|