网站首页/ 信息中心/ 档案百科/

从零搭建可落地的单位/个人护照档案管理软件全实操指南

发布时间:2026年09月15日 14:20:18 浏览量:0

环境准备

1. 下载安装对应系统的Python安装包,直接从官方地址下载:https://www.python.org/downloads/

安装时必须勾选「Add Python to PATH」选项,否则后续命令无法正常执行。安装完成后打开终端(Windows按Win+R输入cmd回车,Mac直接打开终端程序),输入以下命令验证安装: ``` python --version ``` 输出版本号即说明安装成功。

2. 在终端执行以下命令,安装项目所需依赖: ``` pip install flask flask-sqlalchemy pandas openpyxl ``` 等待安装完成即可,所有依赖均为开源免费工具。

项目文件创建

按照以下结构创建文件和文件夹,整个项目仅需1个主程序文件+1个空文件夹,操作简单:

复制完整可运行代码

从零搭建可落地的单位/个人护照档案管理软件全实操指南

打开刚刚创建的app.py文件,直接复制以下完整代码,无需修改即可使用,自定义配置会标注修改位置: ``` from flask import Flask, render_template_string, request, redirect, send_file from flask_sqlalchemy import SQLAlchemy import pandas as pd import io app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///instance/passport.db' app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False 可自行修改管理员账号密码 ADMIN_USER = 'admin' ADMIN_PWD = '123456' db = SQLAlchemy(app) 护照档案数据模型 class Passport(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(50), nullable=False) passport_no = db.Column(db.String(20), unique=True, nullable=False) expire_date = db.Column(db.String(10), nullable=False) status = db.Column(db.String(20), nullable=False) note = db.Column(db.String(200)) def to_dict(self): return { 'id': self.id, 'name': self.name, 'passport_no': self.passport_no, 'expire_date': self.expire_date, 'status': self.status, 'note': self.note } 前端页面模板 HTML_TPL = ''' 护照档案管理

护照档案管理系统 {% if not login %}
{% else %}
导出全部档案

{% for item in list %} {% endfor %}
姓名 护照号 有效期 保管状态 备注 操作
{{item.name}} {{item.passport_no}} {{item.expire_date}} {{item.status}} {{item.note}} 删除
''' @app.route('/') def index(): kw = request.args.get('kw', '') login = request.cookies.get('passport_login') == '1' if not login: return render_template_string(HTML_TPL, login=False) if kw: data = Passport.query.filter(Passport.name.contains(kw) | Passport.passport_no.contains(kw)).all() else: data = Passport.query.all() list_data = [item.to_dict() for item in data] return render_template_string(HTML_TPL, login=True, list=list_data, kw=kw) @app.route('/login', methods=['POST']) def login(): username = request.form.get('username') password = request.form.get('password') if username == ADMIN_USER and password == ADMIN_PWD: resp = redirect('/') resp.set_cookie('passport_login', '1', max_age=36002430) return resp return redirect('/') @app.route('/add', methods=['POST']) def add(): name = request.form.get('name') passport_no = request.form.get('passport_no') expire_date = request.form.get('expire_date') status = request.form.get('status') note = request.form.get('note', '') if Passport.query.filter_by(passport_no=passport_no).first(): return redirect('/') p = Passport(name=name, passport_no=passport_no, expire_date=expire_date, status=status, note=note) db.session.add(p) db.session.commit() return redirect('/') @app.route('/delete') def delete(): id = request.args.get('id') p = Passport.query.get(id) if p: db.session.delete(p) db.session.commit() return redirect('/') @app.route('/export') def export(): data = [item.to_dict() for item in Passport.query.all()] df = pd.DataFrame(data) df = df.rename(columns={ 'name':'姓名', 'passport_no':'护照号', 'expire_date':'有效期', 'status':'保管状态', 'note':'备注' }) output = io.BytesIO() df.to_excel(output, index=False, engine='openpyxl') output.seek(0) return send_file(output, download_name='护照档案列表.xlsx', as_attachment=True) if __name__ == '__main__': with app.app_context(): db.create_all() app.run(debug=False) ```

启动运行系统

使用与数据维护

核心功能操作

数据备份与迁移

所有档案数据都存储在instance文件夹内的passport.db文件中,备份只需复制整个instance文件夹到安全位置即可,迁移到其他设备时,把原instance文件夹复制到新项目的根目录即可保留所有数据,不会丢失。

局域网多人使用配置

如果需要单位局域网内多人同时访问,只需修改app.py最后一行启动代码,将原有代码改为: ``` app.run(debug=False, host='0.0.0.0', port=5000) ```

修改后重新启动,其他人通过部署电脑的局域网IP+5000端口即可访问,例如部署电脑IP为192.168.1.100,访问地址为http://192.168.1.100:5000,无需额外配置。

数字档案馆系统多终端安全可靠实时同步标准化实施方案
数字档案馆系统多终端安全可靠实时同步标准化实施方案
数字档案馆系统多终端同步,是指通过技术手段实现馆藏档案元数据、电子档案原文等核心资源,在PC端、移动智能终端、大屏展示终端、自助查询终端等不同载体间的一致性更新与访问适配。同步过程需严格遵循《数字档案...
2026年09月15日 14:20:18
2026年档案制度建设服务商哪家好?挑选标准有哪些?
2026年档案制度建设服务商哪家好?挑选标准有哪些?
挑选靠谱的档案制度建设服务商,需结合资质、服务经验、合规性、落地能力多维度评估,不存在绝对的“最好”,适配自身单位需求的才是最优选择。接下来将从核心挑选维度、服务考核要点、常见问题等方面展开说明,帮助...
2026年09月15日 14:20:18
微信咨询
电话联系
QQ客服
微信咨询一对一服务
服务热线: 028-8744 4417
QQ客服: 2305721818