927f2355374ec7de43ebae46d570ff79b15ba075
发信能力整体下线,唯一的调用方(忘记密码)前端也从来没接过。 - utils/shortcuts.py 删 send_email,连带四个 django.core.mail 相关 import - account/tasks.py 整个删除,里面只有 send_email_async 一个 actor - 删 ApplyResetPasswordAPI / ResetPasswordAPI 及其路由、serializer, User.reset_password_token 和 reset_password_token_expire_time 两个 字段(account/0010) - 删 SMTPAPI / SMTPTestAPI 及其路由、三个 SMTP serializer、 SysOptions.smtp_config - account/templates/reset_password_email.html options/0003 数据迁移删掉库里的 smtp_config 行:_init_option 会为每个 OptionKey 建行,key 从代码里去掉后它会变成孤儿,而且配过 SMTP 的话 value 里存着明文密码。 保留 ResetUserPasswordAPI(管理端直接重置密码,不发信,前端在用)和 User.email(注册要填)。 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
OnlineJudge 2.0
An onlinejudge system based on Python and Vue. Demo
Overview
- Based on Docker; One-click deployment
- Separated backend and frontend; Modular programming; Micro service
- ACM/OI rule support; realtime/non-realtime rank support
- Amazing charting and visualization
- Template-problem support
- More reasonable permission control
- Multi-language support:
C,C++,Java,Python2,Python3 - Markdown & MathJax support
- Contest participants IP limit(CIDR)
Main modules are available below:
- Backend(Django): https://github.com/QingdaoU/OnlineJudge
- Frontend(Vue): https://github.com/QingdaoU/OnlineJudgeFE
- Judger Sandbox(Seccomp): https://github.com/QingdaoU/Judger
- JudgeServer(A wrapper for Judger): https://github.com/QingdaoU/JudgeServer
Installation
Follow me: https://github.com/QingdaoU/OnlineJudgeDeploy/tree/2.0
Documents
Screenshots
Frontend:
You can control the menu and chart status in rankings.
Admin:
Browser Support
Modern browsers(chrome, firefox) and Internet Explorer 10+.
Thanks
- I'd appreciate a star if you find this helpful.
- Thanks to everyone that contributes to this project.
- Special thanks to heb1c, who has given us a lot of suggestions.
License
Description












