RamEx / api /migrations /0001_initial.py
zdy10046's picture
deploy RamEx to Hugging Face without binary files
e657e99
Raw
History Blame Contribute Delete
5.94 kB
# Generated by Django 4.2 on 2025-03-26 01:27
import api.models
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
import uuid
class Migration(migrations.Migration):
initial = True
dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.CreateModel(
name='Project',
fields=[
('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
('name', models.CharField(max_length=200, verbose_name='项目名称')),
('description', models.TextField(blank=True, verbose_name='项目描述')),
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('last_modified', models.DateTimeField(auto_now=True, verbose_name='最后修改时间')),
('status', models.CharField(choices=[('initialized', '已初始化'), ('data_loaded', '数据已加载'), ('preprocessing', '数据预处理中'), ('preprocessing_completed', '数据预处理完成'), ('analysis', '分析中'), ('completed', '已完成'), ('error', '出错')], default='initialized', max_length=50, verbose_name='项目状态')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='projects', to=settings.AUTH_USER_MODEL)),
],
options={
'verbose_name': '项目',
'verbose_name_plural': '项目',
},
),
migrations.CreateModel(
name='PreprocessingTask',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('completed_at', models.DateTimeField(blank=True, null=True, verbose_name='完成时间')),
('parameters', models.JSONField(default=dict, verbose_name='参数')),
('status', models.CharField(default='pending', max_length=50, verbose_name='状态')),
('result', models.JSONField(blank=True, null=True, verbose_name='结果')),
('project', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='preprocessing_tasks', to='api.project')),
],
options={
'verbose_name': '预处理任务',
'verbose_name_plural': '预处理任务',
},
),
migrations.CreateModel(
name='ExportTask',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('completed_at', models.DateTimeField(blank=True, null=True, verbose_name='完成时间')),
('format', models.CharField(max_length=10, verbose_name='格式')),
('components', models.JSONField(default=list, verbose_name='组件')),
('status', models.CharField(default='pending', max_length=50, verbose_name='状态')),
('file', models.FileField(blank=True, null=True, upload_to='exports/', verbose_name='导出文件')),
('project', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='export_tasks', to='api.project')),
],
options={
'verbose_name': '导出任务',
'verbose_name_plural': '导出任务',
},
),
migrations.CreateModel(
name='DataFile',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('file', models.FileField(upload_to=api.models.get_file_path, verbose_name='文件')),
('filename', models.CharField(max_length=255, verbose_name='文件名')),
('uploaded_at', models.DateTimeField(auto_now_add=True, verbose_name='上传时间')),
('wavenumber_min', models.FloatField(blank=True, null=True, verbose_name='最小波数')),
('wavenumber_max', models.FloatField(blank=True, null=True, verbose_name='最大波数')),
('project', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='data_files', to='api.project')),
],
options={
'verbose_name': '数据文件',
'verbose_name_plural': '数据文件',
},
),
migrations.CreateModel(
name='AnalysisTask',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('analysis_type', models.CharField(choices=[('meta_free', '无元数据分析'), ('meta_based', '基于元数据分析')], max_length=20, verbose_name='分析类型')),
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('completed_at', models.DateTimeField(blank=True, null=True, verbose_name='完成时间')),
('parameters', models.JSONField(default=dict, verbose_name='参数')),
('status', models.CharField(default='pending', max_length=50, verbose_name='状态')),
('result', models.JSONField(blank=True, null=True, verbose_name='结果')),
('project', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='analysis_tasks', to='api.project')),
],
options={
'verbose_name': '分析任务',
'verbose_name_plural': '分析任务',
},
),
]