<pre>
# 教材管理系统的设计与实现
# 导入必要的模块
import sqlite3
from flask import Flask, render_template, request
app = Flask(__name__)
# 创建数据库连接
def get_db_connection():
conn = sqlite3.connect('textbook.db')
conn.row_factory = sqlite3.Row
return conn
# 初始化数据库
def init_db():
with app.app_context():
db = get_db_connection()
db.execute('''CREATE TABLE IF NOT EXISTS textbooks
(id INTEGER PRIMARY KEY AUTOINCREMENT,
title TEXT NOT NULL,
author TEXT NOT NULL,
edition TEXT NOT NULL,
isbn TEXT NOT NULL)''')
db.commit()
# 主页路由
@app.route('/')
def index():
db = get_db_connection()
textbooks = db.execute('SELECT * FROM textbooks').fetchall()
db.close()
return render_template('index.html', textbooks=textbooks)
# 添加教材路由
@app.route('/add_textbook', methods=('GET', 'POST'))
def add_textbook():
if request.method == 'POST':
title = request.form['title']
author = request.form['author']
edition = request.form['edition']
isbn = request.form['isbn']
db = get_db_connection()
db.execute('INSERT INTO textbooks (title, author, edition, isbn) VALUES (?, ?, ?, ?)',
(title, author, edition, isbn))
db.commit()
db.close()
return redirect(url_for('index'))
return render_template('add_textbook.html')
if __name__ == '__main__':
init_db()
app.run(debug=True)
</pre>