持续更新,个人使用经验+用户群内大佬回答分享。既包括 HydroOJ(当前OJ) 的一些经验,又包括 Hydro 框架的经验。绝大部分内容非原创,而是来自于 Hydro 用户群。

Hydro 框架遇到问题时建议先在文档中查阅,然后确保自己使用的是最新版本(文档:更新),然后如果下方没有出现你遇到的问题,可以在Hydro 用户群(1085853538)详细描述问题来提问。


Q:
A:


Q:怎么删除用户?
A:可以安装一个navicat,然后打开user表,就很方便了。


Q:怎么在比赛的时候进行广播通知?
A:比赛主持人可以在 /contest/id/broadcast 操作。


Q:开发者模式部署了是不是就不能通过yarn global upgrade-interactive --latest来更新了?
A:是的,请使用 git pull 的方式更新


Q:如何删除域?
A:hydrooj cli domain del <id>文档:hydrocli


Q:下载导出题目的时候出现一个github窗口,就是没有数据下载下来咋办?
A:打包依赖service worker,http环境是没法sw的,所以就需要借github.io的https来用。可以开启https。不使用https的话需要能够正常连接github。要不然就只能单文件下载。


Q:开发者模式下,服务器编译前端就死机,这正常吗?
A:这很正常。ui build至少需要4GB内存。小内存机器建议使用预编译的。


Q:如何屏蔽学生的题解查看?
A:域设置里创建无“查看题解”权限的角色,把学生设置为这样的角色。


Q:字段 content 验证错误?
A:内容栏写点东西,写啥都行,不能空着。


Q:更新后部分时间显示出错,显示出 %2021%30%2 这样的奇怪样子。
A:更新后出错一般都是因为手动的前端修改没有更新的原因,具体到这个问题,应该是与一次时区支持的更新有关(github),可以检查一下自己的修改的对应的页面。


Q:训练计划/作业/比赛中的某道题删除后导致无法打开了怎么办?
A:确认有编辑权限的情况下,在网址后面添加 /edit,即可进入编辑界面。


Q:怎么备份?
A:文档:数据库备份和恢复


Q:怎么控制一道题的时间限制和内存限制?
A:文档:测试数据格式。可以在这里看到很多例子 系统测试题域


Q:跨域引用怎么没用了?
A:跨域引用功能已经被复制功能替代了,可以参见文档:复制题目。简单来说,假设需要在 A 域引用 B 域的功能,可以先在 B 域的域设置中的“允许引用该域题目的域”填写 A 域的 id。然后在 B 域对应题目的侧边栏点击复制,紧接着填写 A 域 id 即可。


Q:如果想从一键部署换到开发者部署,但是不换数据库和存储,是可以实现的吗?
A:可以。只需要先 stop,clone repo 后,build 一下,然后 start 就行了。(stop、start 方法参见 文档:维护


Q:一个评测账号可以多个评测机公用吗?
A:推荐一个账号一个评测机。


Q:多评测机时会优先用哪个?
A:没有严格顺序,优先用空着的。


Q:怎么查看所有评测记录?
A:确认有权限的情况下在 url 添加 ?allDomain=1,此时 url 大概长这样:域名/record?allDomain=1


Q:为什么评测记录数量会变少?
A:每天凌晨会自动删自测的历史记录。


Q:怎么查看页面/题目的原始数据?(指未经前端渲染的数据,不是指测试数据)
A:在题目的 url 后面添加 ?noTemplate=1 即可。


Q:一些导入的题目为什么会出现错误的 markdown 渲染?
A:可能是因为导入格式是 html 模式,此时数据库中会标注强制 html 渲染,只是编辑的话没用。可以在数据库中修改题目的 html 字段。

2 条评论

  • 1