跳转至

入门

本指南将引导您完成在浏览器中创建第一个课程实例和评估的过程。

如果您是 ZJUI-Learn 的新手,请考虑首先阅读 概念 页面 - 本指南假设您知道什么是课程、课程实例、评估和问题。

!!! tip “课程内容存储在 Git 存储库中”

ZJUI-Learn 将所有课程内容存储在 **Git 存储库**中。这意味着课程配置文件(问题、评估、课程人员等)可以作为磁盘上的文件进行管理,这对于较大的课程人员来说是有益的。有关详细信息,请参阅[编辑和同步](../sync.md) 和[本地安装](../installing.md)。

在开始之前,您需要一个 ZJUI-Learn 课程空间。如果您还没有,请请求课程。获得批准后,您将获得 ZJUI-Learn 中课程的所有者权限。如果您在请求中提供了 GitHub 帐户,您还可以访问 GitHub 存储库来获取课程内容。

1. 打开你的课程

https://us.prairielearn.com(或您机构的 ZJUI-Learn 实例)登录。您的课程显示在主页上的具有讲师访问权限的课程下。

ZJUI-Learn 带有课程面板的主页

单击课程名称将其打开。您将进入课程实例页面。

显示课程实例选项卡和侧边栏的课程登陆页面

侧边栏分为两个范围:

  • 课程 (top):所有术语中的所有内容 - 问题、课程范围设置、问题库、课程工作人员。
  • 课程实例 (bottom):一学期的课程 — 评估、成绩册、学生、LMS 连接。

2.创建课程实例

课程实例是课程的一项内容,例如“2025 年秋季”。从课程实例,单击添加课程实例

创建课程实例对话框

填写:

  • 长名称 — 学生看到的内容(例如,Fall 2025)。
  • 简称 — 目录安全标识符(例如,Fa25)。没有空格。
  • 发布设置 — 在构建时保留 未发布。您将在第 10 步中发布。
  • 自助注册设置 — 如果您要与学生共享注册链接,请保留默认值;取消选中您是手动添加学生还是通过 LMS 添加学生。有关全套选项,请参阅注册控制
  • 课程实例权限 — 如果您想查看/编辑此课程实例的成绩,请选择 学生数据编辑器。 (您可以稍后从“人员”选项卡更改此设置。)

单击创建。您现在位于新课程实例内。

!!! tip “重用上学期的内容”

要克隆先前的实例及其所有评估,请不要单击“添加课程实例”,而是打开要复制的先前实例,转到**实例设置 → 设置**,然后滚动到**制作此课程实例的副本**。您可以选择编辑日期和任何新评估,但结构会保留。

3. 添加您的课程人员

如果您有助教或联合讲师,请立即邀请他们。转到课程侧栏中的员工

带有添加用户按钮的员工页面

单击 添加用户 并通过 UID(通常是类似电子邮件的标识)进行邀请。然后指定向您的员工提供的访问权限。

课程内容访问是指查看和创作课程内容的能力。这里最常用的角色是:

  • 编辑器 — 可以创建和修改问题和评估。这是专为负责管理课程内容的联合讲师和助教而设计的。
  • 查看者 — 可以查看问题和评估,但不能修改它们。这是为提供其他支持角色或课程观察员的助教而设计的。

课程实例访问是指对学生数据的访问。对于每个实例,工作人员可能被赋予以下角色:

  • 学生数据编辑器 — 可以查看和修改该课程实例上的学生数据(例如注册状态和成绩)。必须赋予负责评分的助教这个角色。
  • 学生数据查看器 — 可以查看此课程实例上的学生数据,但不能修改。这可以用于不参与评分的助教。

请参阅课程人员 了解完整的细分和推荐的角色。

4. 提出你的第一个问题

课程侧栏中,单击问题

问题列表——一个填充课程;你的将从空开始

(您的课程将为空 - 屏幕截图显示了已填充的课程,以便您可以看到布局。)单击 添加问题。我们强烈建议从模板开始,但在本教程中,我们将从一个空问题开始。

添加带有模板选项卡的问题表单和基本问题模板列表

将其命名为 Find the area of a rectangle,将 QID 设置为 rectangle-area,选择 空问题,然后单击 创建问题

您将进入问题的 文件 选项卡。

问题的“文件”选项卡显示 README.md、info.json、question.html、server.py

单击 question.html 旁边的 编辑 并将内容替换为:

question.html
<pl-question-panel>
  <p>What is the area of a rectangle that has sides 4 and 5?</p>
</pl-question-panel>

<pl-multiple-choice answers-name="area">
  <pl-answer correct="true">20</pl-answer>
  <pl-answer correct="false">10</pl-answer>
  <pl-answer correct="false">9</pl-answer>
  <pl-answer correct="false">18</pl-answer>
  <pl-answer correct="false">40</pl-answer>
</pl-multiple-choice>

pl-multiple-choice 是 ZJUI-Learn 的提交元素 之一 - 学生与之交互的输入。 元素目录 列出了您可以在此处使用的每个元素。

question.html 的浏览器文件编辑器,带有语法突出显示和保存按钮

单击“保存”,然后单击“预览”选项卡。

回答20题并点击“保存并评分”后预览问题;提交面板显示正确!徽章和员工信息侧边栏可见

选择一个选项并单击“保存并评分”。

!!! tip “建议随机”

尽管上面的问题以随机顺序提供选项,但该问题始终提供相同的选项集。我们鼓励您尽可能在所有自动评分问题中引入随机化。

5. 使用 server.py 添加随机化

问题的 server.py 为每个学生生成随机参数和 (optionally) 自定义成绩响应。返回文件并编辑 server.py

server.py
import random

def generate(data):
    a = random.randint(2, 5)
    b = random.randint(11, 19)

    data["params"]["a"] = a
    data["params"]["b"] = b

    data["params"]["distractor1"] = (a * b) / 2
    data["params"]["distractor2"] = 2 * (a * b)
    data["params"]["distractor3"] = 2 * (a + b)
    data["params"]["distractor4"] = a + b

    data["params"]["truearea"] = a * b

返回 Files 并再次编辑 question.html,现在使用模板化版本:

question.html
<pl-question-panel>
  <p>What is the area of a rectangle that has sides {{params.a}} and {{params.b}}?</p>
</pl-question-panel>

<pl-multiple-choice answers-name="area">
  <pl-answer correct="true">{{params.truearea}}</pl-answer>
  <pl-answer correct="false">{{params.distractor1}}</pl-answer>
  <pl-answer correct="false">{{params.distractor2}}</pl-answer>
  <pl-answer correct="false">{{params.distractor3}}</pl-answer>
  <pl-answer correct="false">{{params.distractor4}}</pl-answer>
</pl-multiple-choice>

保存并预览。单击 新变体 以查看值的变化。现在每个学生都会得到这个问题的不同版本。

!!! tip “你不需要从头开始写每个问题”

**添加问题**表单引导出一系列模板,这些模板分为三类:**基本问题**(硬编码的提示和答案)、**中级问题**(无需 Python 的内置随机化)和 **高级问题**(Python 驱动的随机化)。选择模板后,您将进入“文件”选项卡,其中包含准备编辑的工作 `question.html`(以及 `server.py`,如果适用)。

![使用 ZJUI-Learn 模板库添加问题表格,显示基础、中级和高级模板卡](screenshots/11-question-templates.png)

如需更具体的信息,请浏览 [**XC 101:示例课程**](https://us.prairielearn.com/pl/course/108/),其中包含 200 多个可立即复制的问题,涵盖每个元素和评分风格。要将其复制到您的课程中:

1. 打开 [XC 101](https://us.prairielearn.com/pl/course/108/) 并找到一个问题(**课程实例→SectionA** 具有按主题对问题进行分组的评估,例如“PL 元素的问题库”)。
2. 打开问题的 **预览** 选项卡,然后单击右上角的 **复制问题**。
3. 选择您的课程作为目的地并提交。

您现在正在自己的课程中编辑副本。重命名 QID 并根据需要进行调整。

6. 创建您的第一个评估

切换到您的课程实例(侧栏 → 课程实例)并单击 评估

带有添加评估按钮的评估列表

单击“添加评估”。

创建带有标题、简称、类型 (Homework/Exam)、设置字段的评估对话框

填写:

  • 标题 — 学生可见(例如,Geometric properties and applications)。
  • 简称 — 目录标识符(例如,homework1)。
  • 类型家庭作业,用于形成性练习,可无限次重试; 考试进行有限尝试的分级评估。以后无法更改类型。
  • 集合 — 从 HomeworkQuizExam 等中选择。该集合纯粹是组织性的;它不会改变行为。

单击创建。您将进入带有空白区域的评估。

7. 在评估中添加问题

转到评估的 问题 选项卡并单击 编辑。点击添加区域创建区域,然后点击区域底部的添加问题,搜索rectangle-area,并选择匹配的结果。

搜索矩形区域并突出显示结果的问题选择器

单击结果后,问题将添加到区域中:

编辑模式下的评估问题选项卡,区域中带有矩形区域

如果需要,请设置分值,然后单击“保存”。

8.配置评估访问规则

打开评估的 访问 选项卡。在“默认”中,单击“编辑”。在日期控制中,选择预定发布,设置学生可以开始的发布日期/时间,选择截止日期,设置截止日期/时间,并将截止日期学分保持在100%。单击保存

访问选项卡总结了发布窗口和到期日信用:

显示现代访问控制默认值的评估访问选项卡

要了解有关不同访问控制选项的更多信息,请参阅评估访问控制文档

9. 以学生身份预览

在与学生分享任何内容之前,请自行进行评估。打开用户菜单(右上角)并选择无访问限制的学生视图

开发用户下拉列表显示员工视图、学生视图、无访问限制的学生视图

您可以准确地看到学生所看到的内容,再加上只有工作人员可以看到的黄色重新生成评估实例横幅:

学生对评估的看法,包括问题清单和要点;重新生成您的评估实例横幅已突出显示

!!! warning “编辑后重新生成”

每当您更改评估的问题、要点或区域时,您现有的试运行实例就会**过时** — 它是根据旧配置构建的。单击 **重新生成您的评估实例** 以放弃它并选择您的编辑。学生没有此选项 - 如果真正的学生在您进行更改后需要一个新实例,则工作人员必须为他们重新生成它。

单击问题以查看学生如何呈现:

使用“保存并评分”和“仅保存”按钮查看单个问题的学生视图

完成后,从同一下拉列表切换回员工视图。

10. 学生的发布和招生

转到实例设置→发布

带有未发布/计划/已发布单选按钮、结束日期和扩展部分的发布设置

选择“已发布”以使课程实例可供学生使用,然后点击“保存”。您可以在课程实例文档 中阅读有关发布的更多信息。

要让学生加入,您可以从 实例设置 → 自行注册 共享注册链接。学生点击链接并自行注册。请参阅注册控制 了解代码、机构限制以及在截止日期后禁用自行注册。

后续步骤

您现在拥有一个带有已发布评估的工作课程实例:partying_face:。从这里,前往讲师指南,获取有关每个 ZJUI-Learn 功能的参考材料。