Python库Flask和SQLite数据库创建简单CRUD(创建、读取、更新、删除)应用的示例

2024-04-15 18:29 Python库Flask和SQLite数据库创建简单CRUD(创建、读取、更新、删除)应用的示例已关闭评论

下面是一个使用Flask和SQLite数据库创建简单CRUD(创建、读取、更新、删除)应用的示例。假设我们要创建一个简单的博客系统,包含文章标题和内容。

首先安装Flask和Flask-SQLAlchemy(用于简化数据库操作):

pip install flask flask-sqlalchemy

然后创建app.py文件:

from flask import Flask, render_template, request, redirect, url_for
from flask_sqlalchemy import SQLAlchemy
from datetime import datetime

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///blog.db'
db = SQLAlchemy(app)

class Post(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(100), nullable=False)
    content = db.Column(db.Text, nullable=False)
    pub_date = db.Column(db.DateTime, default=datetime.utcnow)

@app.route('/')
def index():
    posts = Post.query.all()
    return render_template('index.html', posts=posts)

@app.route('/new_post', methods=['GET', 'POST'])
def new_post():
    if request.method == 'POST':
        title = request.form['title']
        content = request.form['content']
        new_post = Post(title=title, content=content)
        db.session.add(new_post)
        db.session.commit()
        return redirect(url_for('index'))

    return render_template('new_post.html')

# 为了完整性,你还需要实现查看详细文章、编辑和删除的功能,这里略去以简化示例

if __name__ == '__main__':
    db.create_all()
    app.run(debug=True)

在这个示例中:

  1. 首先导入所需模块,初始化Flask应用,并设置SQLite数据库连接。
  2. 定义一个Post模型,表示博客文章,其中包含id、title、content和pub_date字段。
  3. /路由用于显示所有文章列表,从数据库查询所有文章并传递给模板。
  4. /new_post路由处理新文章的创建,如果是POST请求,则从表单获取标题和内容,创建新的Post对象并保存到数据库,最后重定向回主页面。

同时,你需要创建两个模板文件templates/index.htmltemplates/new_post.html,分别用于显示文章列表和新建文章的表单。

请根据实际情况创建相应的HTML模板,并为查看、编辑和删除文章等功能添加对应的路由和视图函数。这样你就有了一个基于Flask和SQLite的简单博客系统的雏形。

当前文章价值0.23元,扫一扫支付后添加微信提供帮助!(如不能解决您的问题,可以申请退款)

你可能感兴趣的文章

来源:每日教程每日一例,深入学习实用技术教程,关注公众号TeachCourse
转载请注明出处: https://www.teachcourse.cn/3348.html ,谢谢支持!

资源分享

分类:python 标签:, ,
自定义弹窗 VS AlertDialog分享弹窗 自定义弹窗 VS AlertDialog分
Android应用微信登录功能实现 Android应用微信登录功能实现
harmony学习LocalStorage在UIAbility组件和页面组件之间的应用 harmony学习LocalStorage在UI
浅谈RoboVM 浅谈RoboVM

评论已关闭!