一个家庭日报系统
This commit is contained in:
104
core/migrations/0001_initial.py
Normal file
104
core/migrations/0001_initial.py
Normal file
@@ -0,0 +1,104 @@
|
||||
# Generated by Django 5.1.4 on 2026-01-04 11:06
|
||||
|
||||
import django.utils.timezone
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='FamilyTask',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('type', models.CharField(choices=[('purchase', '采购'), ('housework', '家务')], max_length=20, verbose_name='类型')),
|
||||
('content', models.TextField(verbose_name='内容')),
|
||||
('priority', models.CharField(choices=[('low', '低'), ('medium', '中'), ('high', '高')], default='medium', max_length=10, verbose_name='优先级')),
|
||||
('status', models.CharField(choices=[('pending', '待处理'), ('completed', '已完成')], default='pending', max_length=20, verbose_name='状态')),
|
||||
('deadline', models.DateField(blank=True, null=True, verbose_name='截止日期')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
|
||||
('updated_at', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '家庭事项',
|
||||
'verbose_name_plural': '家庭事项',
|
||||
'ordering': ['-priority', '-deadline', '-created_at'],
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='InsightRecord',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('date', models.DateField(default=django.utils.timezone.now, verbose_name='日期')),
|
||||
('content', models.TextField(verbose_name='内容')),
|
||||
('file', models.FileField(blank=True, null=True, upload_to='insight_files/', verbose_name='上传文件')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
|
||||
('updated_at', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '感悟记录',
|
||||
'verbose_name_plural': '感悟记录',
|
||||
'ordering': ['-date', '-created_at'],
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='ReadingRecord',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('date', models.DateField(default=django.utils.timezone.now, verbose_name='日期')),
|
||||
('type', models.CharField(choices=[('book', '书籍'), ('article', '文章'), ('video', '视频')], max_length=20, verbose_name='类型')),
|
||||
('title', models.CharField(max_length=200, verbose_name='标题')),
|
||||
('source', models.CharField(blank=True, max_length=200, null=True, verbose_name='来源')),
|
||||
('progress', models.CharField(blank=True, max_length=100, null=True, verbose_name='进度')),
|
||||
('file', models.FileField(blank=True, null=True, upload_to='reading_files/', verbose_name='上传文件')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
|
||||
('updated_at', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '阅读记录',
|
||||
'verbose_name_plural': '阅读记录',
|
||||
'ordering': ['-date', '-created_at'],
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='SystemConfig',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('smtp_server', models.CharField(blank=True, max_length=100, null=True, verbose_name='SMTP服务器')),
|
||||
('smtp_port', models.IntegerField(default=587, verbose_name='SMTP端口')),
|
||||
('smtp_username', models.CharField(blank=True, max_length=100, null=True, verbose_name='SMTP用户名')),
|
||||
('smtp_password', models.CharField(blank=True, max_length=100, null=True, verbose_name='SMTP密码')),
|
||||
('send_time', models.TimeField(default='08:00', verbose_name='每日发送时间')),
|
||||
('recipient_email', models.EmailField(blank=True, max_length=254, null=True, verbose_name='收件人邮箱')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
|
||||
('updated_at', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '系统配置',
|
||||
'verbose_name_plural': '系统配置',
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='TodayPlan',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('date', models.DateField(default=django.utils.timezone.now, verbose_name='日期')),
|
||||
('content', models.TextField(verbose_name='内容')),
|
||||
('priority', models.CharField(choices=[('low', '低'), ('medium', '中'), ('high', '高')], default='medium', max_length=10, verbose_name='优先级')),
|
||||
('type', models.CharField(choices=[('reading', '阅读'), ('insight', '感悟'), ('family', '家庭事项'), ('other', '其他')], default='other', max_length=20, verbose_name='类型')),
|
||||
('status', models.CharField(choices=[('pending', '待处理'), ('completed', '已完成')], default='pending', max_length=20, verbose_name='状态')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
|
||||
('updated_at', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '今日计划',
|
||||
'verbose_name_plural': '今日计划',
|
||||
'ordering': ['-priority', '-created_at'],
|
||||
},
|
||||
),
|
||||
]
|
||||
Reference in New Issue
Block a user