通讯录管理系统是一种可以有效管理联系人信息的应用程序,包含联系人姓名、电话、电子邮件地址等信息。本文将介绍如何开发一个通讯录管理系统,并分享完整的源代码。
本项目使用以下开发环境:
在开始开发之前,请确保已安装上述开发环境。让我们按照以下步骤进行项目准备:
使用以下命令创建项目目录和虚拟环境:
mkdir address-book && cd address-book
python3 -m venv venv
source venv/bin/activate
在虚拟环境中使用以下命令安装Flask库:
(venv) pip install flask
在MySQL数据库中创建名为“address_book”的数据库,并创建一个“contacts”表来存储联系人信息。该表包含以下字段:id(主键,自动生成),name,phone和email。
3.1 创建数据库:
CREATE DATABASE address_book;
3.2 创建表:
USE address_book;
CREATE TABLE contacts (
id INT(11) not null AUTO_INCREMENT,
name VARCHAR(50) not null,
phone VARCHAR(20) not null,
email VARCHAR(100),
PRIMARY KEY (id)
);
在进行项目开发之前,请确保已连接到MySQL数据库。让我们按照以下步骤进行项目开发:
在项目目录中创建一个名为“app.py”的文件,用于创建Flask应用程序:
from flask import Flask, render_template, request, redirect, url_for
from flask_mysql_connector import MySQL
app = Flask(__name__)
app.config['MYSQL_USER'] = 'root' # 数据库用户名
app.config['MYSQL_PASSWORD'] = 'xxx' # 数据库密码
app.config['MYSQL_DATABASE'] = 'address_book' # 数据库名
app.config['MYSQL_HOST'] = 'localhost' # 数据库主机名
mysql = MySQL(app)
@app.route('/')
def index():
# 查询所有联系人信息
cur = mysql.connection.cursor()
cur.execute("SELECT * FROM contacts")
data = cur.fetchall()
cur.close()
return render_template('index.html', contacts=data)
@app.route('/add_contact', methods=['POST'])
def add_contact():
# 获取联系人信息
name = request.form['name']
phone = request.form['phone']
email = request.form['email']
# 将联系人信息保存到数据库
cur = mysql.connection.cursor()
cur.execute("INSERT INTO contacts(name, phone, email) VALUES(%s, %s, %s)", (name, phone, email))
mysql.connection.commit()
cur.close()
return redirect(url_for('index'))
@app.route('/delete_contact/')
def delete_contact(id):
# 删除指定联系人信息
cur = mysql.connection.cursor()
cur.execute("DELETE FROM contacts WHERE id=%s", id)
mysql.connection.commit()
cur.close()
return redirect(url_for('index'))
if __name__ == '__main__':
app.run()
在项目目录中创建一个名为“templates”的文件夹,用于存放HTML模板。在“templates”文件夹中创建一个名为“index.html”的文件,用于显示联系人列表和添加联系人的表单:
通讯录管理系统
联系人列表
ID
姓名
电话
邮箱
操作
{% for contact in contacts %}
{{contact[0]}}
{{contact[1]}}
{{contact[2]}}
{{contact[3]}}
删除
{% endfor %}
添加联系人
完整的项目代码可以在GitHub上下载:查看
通讯录管理系统是一种简单而实用的Web应用程序。本文介绍了如何使用Flask框架和MySQL数据库来开发一个通讯录管理系统,并分享了完整的源代码。使用这种应用程序,您可以轻松地添加、删除和管理联系人信息。我们希望这篇文章对您有所帮助!