/pandora-2023-questionnaire

questionnaire site demo

Primary LanguagePython

苏州大学计算机爱好者协会 2023魔盒挑战

本项目是一个简易的问卷系统,问卷可以根据结构化数据自动生成。

开发环境搭建

环境要求

  • Python >= 3.9
  • Git

环境配置

首先使用页面右上角的Fork按钮在自己的账户中创建该仓库的分支。

然后将仓库拉取到本地,其中<userid>应该是你的GitHub用户名:

$ git clone https://github.com/<userid>/pandora-2023-questionnaire.git
$ cd pandora-2023-questionnaire

使用python-venv创建并激活虚拟环境(参见官方文档

$ python -m venv ./venv
> .\venv\Scripts\activate     # for Windows
$ source ./venv/bin/activate # for Linux

安装依赖:

(venv)$ pip install -r requirements.txt

安装Git Hooks(用于commit的前处理):

(venv)$ pre-commit install

运行示例

以正常模式启动:

(venv)$ flask run

以调试(debug)模式启动

(venv)$ flask run --debug

启动后使用浏览器访问 http://127.0.0.1:5000 即可(这是默认地址,请查看上条指令的命令行输出以获得实际的地址)。

提交代码

首先将你更改的文件加入stage,<filepath>替换为文件路径,切记不要加入多余的文件。

$ git add <filepath>

然后创建commit,<message>替换为提交信息,即你做了什么更改,中英文皆可。

$ git commit -m "<message>"

在这一步会运行commit前检查,可能你会看到这样的信息,也就是代码检查工具ruff报错,说明你的代码中有些地方不符合代码规范,这时你需要修改相应的文件。在本例中,错误出在service/submit.py这个文件的第26行过长(Line too long),在添加换行符后重新运行上面的commit指令即可。代码检查与代码规范对于代码的可读性和可维护性至关重要,在大项目中可以减少所谓“屎山代码”的存在,所以不要嫌麻烦哦。

ruff.....................................................Failed
- hook id: ruff
- exit code: 1

service/submit.py:26:75: E501 Line too long (97 > 88 characters)
Found 1 error.

注:在你编写完代码之后也可以在命令行执行ruff check .来运行代码检查

如果你遇到这个也需要重新添加文件并运行commit,因为这个操作修改了文件。

Trim Trailing Whitespace..............................Failed
- hook id: trailing-whitespace
- exit code: 1
- files were modified by this hook

Fixing ...

成功提交commit之后,回到你的账户下本仓库的分支(通常是在https://github.com/<userid>/pandora-2023-questionnaire),在标题下方可以看到

This branch is 1 commit ahead, n commits behind sumsc-caa/pandora-2023-questionnaire:main.

右侧是按钮ContributeSync Fork前者点开之后可以向本仓库提交Pull Request;后者的作用是让你的分支与本仓库同步,如果你在完成了一个任务之后要开发别的任务,请点击这个按钮。

相关资源