大家好!今天咱们来聊聊怎么用Python搭一个科研项目管理系统,而且还是带试用功能的那种。听起来是不是很酷?其实呢,这个系统可以帮我们管理科研项目的进度、经费、成员信息等等。
首先,我们需要安装一些必要的库。比如说,`Flask`用来搭建Web应用,`SQLite`作为我们的数据库。打开你的终端,输入以下命令:
pip install Flask pip install sqlite3
接下来,我们开始编写代码。先创建一个`app.py`文件,这是我们的主程序文件。代码如下:
from flask import Flask, render_template, request, redirect, url_for app = Flask(__name__) @app.route('/') def index(): return "欢迎来到科研项目管理系统!" if __name__ == '__main__': app.run(debug=True)
这段代码很简单,它只是启动了一个基本的Flask服务器,让我们能看到一个欢迎页面。
然后,我们来设置数据库。在同一个目录下新建一个`db.py`文件,用于处理数据库操作。代码如下:
import sqlite3 def init_db(): conn = sqlite3.connect('project.db') c = conn.cursor() c.execute('''CREATE TABLE IF NOT EXISTS projects (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, budget REAL, status TEXT)''') conn.commit() conn.close() if __name__ == '__main__': init_db()
这个脚本会创建一个名为`project.db`的SQLite数据库文件,并初始化一个表来存储项目的信息。
现在,让我们把数据库和Flask结合起来。修改`app.py`,添加一些路由来展示和管理项目:
@app.route('/projects', methods=['GET', 'POST']) def manage_projects(): if request.method == 'POST': name = request.form['name'] budget = float(request.form['budget']) status = request.form['status'] # 插入新项目到数据库 conn = sqlite3.connect('project.db') c = conn.cursor() c.execute("INSERT INTO projects (name, budget, status) VALUES (?, ?, ?)", (name, budget, status)) conn.commit() conn.close() return redirect(url_for('manage_projects')) conn = sqlite3.connect('project.db') c = conn.cursor() c.execute("SELECT * FROM projects") projects = c.fetchall() conn.close() return render_template('projects.html', projects=projects)
最后一步是创建HTML模板`projects.html`,这样用户可以通过浏览器查看和提交项目信息:
科研项目管理 科研项目列表
ID | 名称 | 预算 | 状态 |
---|---|---|---|
{{ project[0] }} | {{ project[1] }} | {{ project[2] }} | {{ project[3] }} |
好了,到这里我们的科研项目管理系统就差不多完成了!你可以运行`python app.py`,然后在浏览器访问`http://127.0.0.1:5000/projects`试试看。
希望这篇文章对你有帮助!如果有任何问题,欢迎随时问我。