主要知识点:Wtforms的使用,ORM模式的数据库连接使用,
{% for i in list %}
…
{%endfor%}遍历
面向新手的一个简单的demo:
直接拿的话记得修改数据库的连接配置,以及import相关包即可使用
app.py
from flask import Flask, render_template, flash, request, redirect, url_for
from flask_sqlalchemy import SQLAlchemy
from sqlalchemy.orm import relationship
from flask_wtf import FlaskForm
from wtforms import StringField, SubmitField
from wtforms.validators import DataRequired
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = "mysql+pymysql://root:123456@localhost/first_flask"
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
app.config['SQLALCHEMY_COMMIT_TEARDOWN'] = True
app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True
app.secret_key = 'iii'
db = SQLAlchemy(app)
class Author(db.Model):
__tablename__ = 'authors'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(16), unique=True)
# 引用 books给自己用 ,author是给Book模型用
books = relationship('Book', backref='author')
def __repr__(self):
return 'Author: %s' % self.name
class Book(db.Model):
__tablename__ = 'books'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(16), unique=True)
author_id = db.Column(db.Integer, db.ForeignKey('authors.id'))
def __repr__(self):
return 'Book: %s %s' % (self.name, self.author_id)
db.drop_all