TrainingPlatform_Django/datasets/models.py
2025-06-03 16:10:11 +08:00

54 lines
1.9 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

from django.db import models
class Dataset(models.Model):
# 自增主键字段Django 默认为每个模型提供一个 id 字段
# 但是如果你需要自定义主键字段,可以用 `primary_key=True` 显式声明
id = models.AutoField(primary_key=True) # 自增主键
# 数据集名称最长255个字符不能为空
name = models.CharField(max_length=255)
# 创建该数据集的用户最长100个字符不能为空
user = models.CharField(max_length=100)
# 任务类型最长50个字符不能为空
task_type = models.CharField(max_length=16)
# 数据集大小使用BigIntegerField来表示较大的整数
size = models.CharField(max_length=64)
# 数据集的总图片数
number = models.IntegerField()
#数据集的描述
description = models.TextField(default="")
# 创建时间,默认为当前时间戳
create_time = models.DateTimeField(auto_now_add=True) # 自动设置为当前时间(只在创建时)
# 数据集的类别,使用 JSONField 存储类别信息
categories = models.JSONField(default=list) # 默认值为一个空列表
# 该数据集是否上传至minio的一个标识
is_upload = models.BooleanField(default=False) # 表示数据集是否已上传,默认为 False
def update_is_upload(self, upload_status):
"""更新数据集的上传状态"""
self.is_upload = upload_status
self.save() # 保存更改到数据库
def __str__(self):
return self.name # 返回数据集名称作为对象的字符串表示
class Project(models.Model):
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=255)
user = models.CharField(max_length=100)
task_type = models.CharField(max_length=16)
description = models.TextField(default="")
create_time = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.name