python的flask框架实现图书管理系统和MySQL
时间: 2024-09-24 13:06:12 浏览: 12
Flask是一个轻量级的Python Web应用框架,它非常适合构建小型到中型的Web应用程序,包括图书管理系统这样的项目。要使用Flask搭建一个基于MySQL的图书管理系统,你可以按照以下步骤进行:
1. **安装依赖**:
- 安装Flask:`pip install flask`
- 安装SQLAlchemy(用于数据库操作):`pip install sqlalchemy`
- 如果需要ORM支持,可能还需要安装如`flask-sqlalchemy`:`pip install flask_sqlalchemy`
2. **创建基础配置**:
- 创建一个Flask应用实例,并设置数据库连接信息(通常是通过环境变量或配置文件)。
```python
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://username:password@localhost/library'
db = SQLAlchemy(app)
```
3. **模型设计**:
- 设计数据模型,比如`Book`模型表示书籍,包含字段如书名、作者、ISBN等。
```python
class Book(db.Model):
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String(100), nullable=False)
author = db.Column(db.String(50), nullable=False)
isbn = db.Column(db.String(13), unique=True)
```
4. **路由与视图**:
- 使用Flask提供的路由功能,定义增删查改的API端点,例如添加图书、查询图书等。
```python
@app.route('/books', methods=['POST'])
def add_book():
new_book = Book(title=request.form['title'], author=request.form['author'], isbn=request.form['isbn'])
db.session.add(new_book)
db.session.commit()
return {'message': 'Book added'}
@app.route('/books/<int:book_id>')
def get_book(book_id):
book = Book.query.get_or_404(book_id)
return {'id': book.id, 'title': book.title, 'author': book.author}
```
5. **运行应用**:
- 最后,在主程序中启动Flask应用。
```python
if __name__ == '__main__':
app.run(debug=True)
```