Hydro个性化:在“通过的题目”显示题目标题

问题描述

Hydro 上的题目有一个问题,就是在“通过的题目”中,题目编号是没有题目标题的,只有题目编号,这对于想要快速查看学生通过了哪些题目是非常不友好的。

解决方法

修改前端源码,在通过的题目列表中的题目编号之后,显示题目标题。

在前端修改的模板中找到 user_detail.html

  1. 所有前端模板文件:点击链接跳转 templates

  2. 找到 user_detail.html 文件,下载到本地。

修改 user_detail.html 文件

在第 111 行左右,将代码按如下修改:

1
2
3
4
5
6
7
8
9
10
11
12
13
 <!-- 展示 2 列 -->
{% set _mark = Math.ceil(pdocs.length/2) %}
{% macro col(pdocs) %}
<!-- 原来是 <div class="medium-9 columns"><ul> 会展示 4 列,由于添加了标题,整个内容会变宽,所以保留两列即可 -->
<div class="medium-6 columns"><ul>
{% for pdoc in pdocs %}
<!-- 显示编号和题目标题 -->
<!-- 原来是 <li>{{ problem.render_problem_title(pdoc, show_tags=false, small=true) }}</li>-->
<li>{{ problem.render_problem_title(pdoc, show_tags=false, small=true) }} {{ pdoc.title }}</li>
<!-- {{ pdoc.title }} 即题目的标题 -->
{% endfor %}
</ul></div>
{% endmacro %}

上传修改后的模板文件到服务器

  1. 将修改后的 user_detail.html 文件上传到服务器的 ~/addon/templates/ 文件夹中。

  2. 重启服务器,即可看到修改后的效果。

1
pm2 restart hydrooj

参考

Hydro官方文档