Python打造在线个人任务管理工具

admin 2025-01-13 322 0

在这个快节奏的时代,高效的任务管理是提升工作效率的关键。今天,我们将用Python语言,结合一些流行的Web框架和数据库技术,打造一个在线个人任务管理工具。这个工具不仅能帮助你记录和跟踪任务,还能提供灵活的任务分类和提醒功能。

Python打造在线个人任务管理工具

项目准备

首先,我们需要确定技术栈。这里我们选择以下工具:

  • Python:作为主要的编程语言。
  • Flask:轻量级的Web框架。
  • SQLite:轻便的数据库,适合小型项目。
  • HTML/CSS/JavaScript:前端技术,用于构建用户界面。

安装依赖

在开始编码之前,我们需要安装必要的依赖包。打开终端,运行以下命令:

pip install Flask Flask-SQLAlchemy

后端开发

创建Flask应用

首先,创建一个名为task_manager的文件夹,并在其中创建一个名为app.py的文件。以下是基本的Flask应用结构:

from flask import Flask, render_template, request, redirect, url_for
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///tasks.db'
db = SQLAlchemy(app)

class Task(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(100), nullable=False)
    description = db.Column(db.Text, nullable=True)
    completed = db.Column(db.Boolean, default=False)

@app.route('/')
def index():
    tasks = Task.query.all()
    return render_template('index.html', tasks=tasks)

@app.route('/add', methods=['POST'])
def add_task():
    title = request.form['title']
    description = request.form['description']
    new_task = Task(title=title, description=description)
    db.session.add(new_task)
    db.session.commit()
    return redirect(url_for('index'))

@app.route('/complete/<int:task_id>')
def complete_task(task_id):
    task = Task.query.get(task_id)
    task.completed = not task.completed
    db.session.commit()
    return redirect(url_for('index'))

if __name__ == '__main__':
    db.create_all()
    app.run(debug=True)

数据库模型

我们定义了一个Task模型,包含idtitledescriptioncompleted四个字段,用于存储任务信息。

前端开发

创建HTML模板

task_manager文件夹中创建一个名为templates的文件夹,并在其中创建一个名为index.html的文件。以下是基本的HTML结构:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>任务管理工具</title>
</head>
<body>
    <h1>我的任务</h1>
    <form method="post" action="/add">
        <input type="text" name="title" placeholder="任务标题" required>
        <textarea name="description" placeholder="任务描述"></textarea>
        <button type="submit">添加任务</button>
    </form>
    <ul>
        {% for task in tasks %}
            <li>
                {{ task.title }} - {{ task.description }}
                <a href="{{ url_for('complete_task', task_id=task.id) }}">
                    {% if task.completed %}未完成{% else %}完成{% endif %}
                </a>
            </li>
        {% endfor %}
    </ul>
</body>
</html>

运行应用

现在,我们的任务管理工具已经基本完成。回到终端,运行以下命令启动应用:

python app.py

打开浏览器,访问http://127.0.0.1:5000,你将看到一个简单的任务管理界面。你可以添加新任务,标记任务为完成或未完成。

扩展功能

为了使工具更加实用,我们可以添加以下功能:

  • 任务分类:允许用户将任务分类到不同的列表中。
  • 提醒功能:通过电子邮件或短信提醒即将到期的任务。
  • 用户认证:添加用户登录和注册功能,保护用户数据。

通过本文,我们用Python和Flask搭建了一个基本的在线个人任务管理工具。虽然功能简单,但这是一个很好的起点,你可以在此基础上不断扩展和完善。希望这个工具能帮助你更好地管理日常任务,提升工作效率。动手试试吧,享受编程的乐趣!

评论(0)