- web/: React + Vite + TypeScript 前端 - backend/: Django + DRF + SimpleJWT 后端 - prototype/: HTML 设计原型 - docs/: PRD 和设计评审文档 - test: 单元测试 + E2E 极限测试
19 lines
736 B
Python
19 lines
736 B
Python
from django.contrib.auth.models import AbstractUser
|
|
from django.db import models
|
|
|
|
|
|
class User(AbstractUser):
|
|
"""Extended user model — Phase 3: quota in seconds."""
|
|
email = models.EmailField(unique=True, verbose_name='邮箱')
|
|
daily_seconds_limit = models.IntegerField(default=600, verbose_name='每日秒数上限')
|
|
monthly_seconds_limit = models.IntegerField(default=6000, verbose_name='每月秒数上限')
|
|
created_at = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')
|
|
updated_at = models.DateTimeField(auto_now=True, verbose_name='更新时间')
|
|
|
|
class Meta:
|
|
verbose_name = '用户'
|
|
verbose_name_plural = '用户'
|
|
|
|
def __str__(self):
|
|
return self.username
|