
很多小项目其实不需要 Django 那么重的 ORM 和 Admin 体系,Flask 加上一两个扩展就够了。这是我反复用的一个最简模板。
from flask import Flask, request, jsonify
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///data.db"
db = SQLAlchemy(app)
class Item(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(120))
@app.post("/api/items")
def add():
data = request.get_json()
it = Item(name=data["name"]); db.session.add(it); db.session.commit()
return jsonify(id=it.id)
开发完之后不要直接 python app.py 上线,用 uwsgi 跑成 unix socket,Nginx 反向代理。SQLite 在并发不高的小项目里完全够用,别一开始就上 MySQL。
这个模板我用来跑过后台表单收集、地图点位数据接口、小工具的后端,稳定得很。