50 lines
1.6 KiB
Python
50 lines
1.6 KiB
Python
|
|
from django.db import models
|
||
|
|
import uuid
|
||
|
|
|
||
|
|
|
||
|
|
class mindMap(models.Model):
|
||
|
|
"""思维导图(最小字段,按接口文档)"""
|
||
|
|
file_name = models.CharField(max_length=255, default='思维导图') # title
|
||
|
|
created_at = models.DateTimeField(auto_now_add=True) # createDate
|
||
|
|
updated_at = models.DateTimeField(auto_now=True) # updateDate
|
||
|
|
deleted = models.BooleanField(default=False) # delete
|
||
|
|
|
||
|
|
class Meta:
|
||
|
|
db_table = 'mindmaps'
|
||
|
|
ordering = ['-created_at']
|
||
|
|
|
||
|
|
def __str__(self):
|
||
|
|
return f"{self.file_name}"
|
||
|
|
|
||
|
|
|
||
|
|
class Node(models.Model):
|
||
|
|
"""节点(最小字段,按接口文档)"""
|
||
|
|
id = models.CharField(max_length=255, primary_key=True, default=uuid.uuid4)
|
||
|
|
mindmap = models.ForeignKey(mindMap, on_delete=models.CASCADE, related_name='nodes')
|
||
|
|
|
||
|
|
is_root = models.BooleanField(default=False) # isRoot
|
||
|
|
parent_id = models.CharField(max_length=255, null=True, blank=True) # parentId
|
||
|
|
children_count = models.IntegerField(default=0) # childrenCount
|
||
|
|
depth = models.IntegerField(default=0) # depth
|
||
|
|
title = models.CharField(max_length=500, blank=True, default='') # title
|
||
|
|
desc = models.TextField(blank=True, default='') # des
|
||
|
|
created_at = models.DateTimeField(auto_now_add=True) # createDate
|
||
|
|
updated_at = models.DateTimeField(auto_now=True) # updateDate
|
||
|
|
deleted = models.BooleanField(default=False) # delete
|
||
|
|
|
||
|
|
class Meta:
|
||
|
|
db_table = 'nodes'
|
||
|
|
ordering = ['created_at']
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|