vue可视化报表平台后台代码
Não pode escolher mais do que 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

70 linhas
3.0 KiB

há 5 anos
from django.db import models
from django.contrib.auth.models import User
from django.utils import timezone
def default_datetime():
now = timezone.now()
return now
há 5 anos
class SourceDataBase(models.Model):
host = models.CharField(max_length=32)
port = models.IntegerField()
username = models.CharField(max_length=32)
password = models.CharField(max_length=256)
database = models.CharField(max_length=32)
base_alias = models.CharField(max_length=32)
creator = models.ForeignKey(User, on_delete=models.CASCADE)
source_id = models.CharField(max_length=64, primary_key=True)
is_private = models.BooleanField(default=True)
status = models.IntegerField(default=1)
created_at = models.DateTimeField(db_index=True, default=default_datetime)
updated_at = models.DateTimeField(db_index=True, null=False)
class SourceDataTable(models.Model):
database = models.ForeignKey(SourceDataBase, on_delete=models.CASCADE)
table = models.CharField(max_length=32)
table_alias = models.CharField(max_length=32)
status = models.IntegerField(default=1)
creator = models.ForeignKey(User, on_delete=models.CASCADE)
id = models.CharField(max_length=64, primary_key=True)
created_at = models.DateTimeField(db_index=True, default=default_datetime)
updated_at = models.DateTimeField(db_index=True, null=False)
há 5 anos
# Create your models here.
class Chart(models.Model):
chart_id = models.CharField(max_length=64, primary_key=True)
chart_name = models.CharField(max_length=128)
source_id = models.ForeignKey(SourceDataBase, on_delete=models.CASCADE)
desc = models.CharField(max_length=512, null=True)
content = models.TextField()
is_private = models.BooleanField()
status = models.IntegerField()
creator = models.ForeignKey(User, on_delete=models.CASCADE)
created_at = models.DateTimeField(db_index=True, default=default_datetime)
updated_at = models.DateTimeField(db_index=True, null=False)
há 5 anos
class Dashboard(models.Model):
dashboard_id = models.CharField(max_length=64, primary_key=True)
name = models.CharField(max_length=128)
desc = models.CharField(max_length=512, null=True)
content = models.TextField()
is_private = models.BooleanField()
status = models.IntegerField()
creator = models.ForeignKey(User, on_delete=models.CASCADE)
created_at = models.DateTimeField(db_index=True, default=default_datetime)
updated_at = models.DateTimeField(db_index=True, null=False)
há 5 anos
class ChartBoardMap(models.Model):
chart = models.ForeignKey(Chart, on_delete=models.CASCADE)
dashboard = models.ForeignKey(Dashboard, on_delete=models.CASCADE)
id = models.CharField(max_length=64, primary_key=True)
created_at = models.DateTimeField(db_index=True, default=default_datetime)
updated_at = models.DateTimeField(db_index=True, null=False)
há 5 anos
class BoardOrder(models.Model):
creator = models.ForeignKey(User, on_delete=models.CASCADE)
order = models.TextField()
id = models.CharField(max_length=64, primary_key=True)
created_at = models.DateTimeField(db_index=True, default=default_datetime)
updated_at = models.DateTimeField(db_index=True, null=False)