手把手教你开发通讯录管理系统 - 完整源代码分享
创始人
2024-04-11 01:33:18
0

通讯录管理系统是一种可以有效管理联系人信息的应用程序,包含联系人姓名、电话、电子邮件地址等信息。本文将介绍如何开发一个通讯录管理系统,并分享完整的源代码。

开发环境

本项目使用以下开发环境:

  • 编程语言:Python 3.8.5
  • 数据库:MySQL 5.7
  • 框架:Flask 1.1.2
  • IDE:PyCharm

项目准备

在开始开发之前,请确保已安装上述开发环境。让我们按照以下步骤进行项目准备:

1、创建项目目录和虚拟环境

使用以下命令创建项目目录和虚拟环境:

mkdir address-book && cd address-book
python3 -m venv venv
source venv/bin/activate

2、安装Flask库

在虚拟环境中使用以下命令安装Flask库:

(venv) pip install flask

3、创建数据库

在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数据库。让我们按照以下步骤进行项目开发:

1、创建Flask应用程序

在项目目录中创建一个名为“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()

2、创建HTML模板

在项目目录中创建一个名为“templates”的文件夹,用于存放HTML模板。在“templates”文件夹中创建一个名为“index.html”的文件,用于显示联系人列表和添加联系人的表单:




    通讯录管理系统


    

联系人列表

{% for contact in contacts %} {% endfor %}
ID 姓名 电话 邮箱 操作
{{contact[0]}} {{contact[1]}} {{contact[2]}} {{contact[3]}} 删除

添加联系人

完整源代码分享

完整的项目代码可以在GitHub上下载:查看

通讯录管理系统是一种简单而实用的Web应用程序。本文介绍了如何使用Flask框架和MySQL数据库来开发一个通讯录管理系统,并分享了完整的源代码。使用这种应用程序,您可以轻松地添加、删除和管理联系人信息。我们希望这篇文章对您有所帮助!

相关内容

热门资讯

鼻毛为什么会变白 鼻毛为什么会... 鼻毛变白的原因可有多种,可能是衰老所致,也可能是疾病所致。鼻毛与眉毛、头发一样,颜色主要是由鼻部毛囊...
甘草泡地龙的功效与作用用量 甘... 甘草泡地龙的功效与作用包括清热解毒、祛痰止咳、调和气血,详情如下:1.清热解毒甘草和地龙都有清热解毒...
维a酸乳膏一个月效果图男士 维... 概述维A酸乳膏是一种能影响骨的生长和上皮代谢的外用药,常用于辅助治疗寻常痤疮、皮肤角化症等疾病。寻常...
腰椎打了4个钢钉多久能工作 腰... 腰椎打了4个钢钉多久能工作受到恢复情况以及腰椎受损严重程度的影响,一般在2-3个月后就能工作。腰椎打...
女人吃桂附地黄丸吃多久一疗程 ... 桂附地黄丸女人吃了可以达到温补肾阳的功效,能够改善肾阳不足所引起的临床症状。女性在出现肾阳不足之后就...
后脑勺有横着的肉杠是脑梗纹吗 ... 概述后脑勺有横着的肉杠可能是因过度肥胖病或脂肪瘤等因素引起。为预防后脑勺出现横着的肉杠,要适度减肥、...
槲皮素和铁皮石斛是一样的功效吗 槲皮素和铁皮石斛的功效不同,但它们有一些相似之处。槲皮素和铁皮石斛对人体的功效是不同的。槲皮素是一种...
丹参滴丸和麝香保心丸同吃行吗 ... 丹参滴丸即复方丹参滴丸,与麝香保心丸二者虽然都常用于冠状动脉粥样硬化性心脏病的预防、治疗和急救,但在...
正常结痂化脓结痂图片对比 概述结痂是伤口愈合过程中的一个阶段。正常结痂的伤口肉芽组织和结痂体紧密结合,结痂处轻微发红,无流脓情...
身上红色的小血点像痣倪海厦 身... 这类红色小血点,应该视情况而定。若是刚出生的小婴儿,则可能是毛细血管痣,也即是人们口中常常提到的“胎...