- 新增 Task 模型(状态、优先级、进展百分比) - 任务 API(列表、统计、进展更新、完成标记) - 前端任务板块(统计卡片 + 任务列表) - 进展可视化(进度条 + 进展记录)
29 lines
931 B
Python
Executable File
29 lines
931 B
Python
Executable File
from rest_framework import serializers
|
|
from .models import DiaryEntry, DailyProgress, Experience, Task
|
|
|
|
class ExperienceSerializer(serializers.ModelSerializer):
|
|
class Meta:
|
|
model = Experience
|
|
fields = '__all__'
|
|
|
|
class DailyProgressSerializer(serializers.ModelSerializer):
|
|
class Meta:
|
|
model = DailyProgress
|
|
fields = '__all__'
|
|
|
|
class DiaryEntrySerializer(serializers.ModelSerializer):
|
|
progresses = DailyProgressSerializer(many=True, read_only=True)
|
|
|
|
class Meta:
|
|
model = DiaryEntry
|
|
fields = '__all__'
|
|
|
|
class TaskSerializer(serializers.ModelSerializer):
|
|
status_display = serializers.CharField(source='get_status_display', read_only=True)
|
|
priority_display = serializers.CharField(source='get_priority_display', read_only=True)
|
|
|
|
class Meta:
|
|
model = Task
|
|
fields = '__all__'
|
|
read_only_fields = ['completed_at', 'created_at', 'updated_at']
|