【发布时间】:2015-10-26 12:11:46
【问题描述】:
我正在学习烧瓶框架和 SQLAlchemy。
我在 docker 容器上运行这个测试脚本,没有为我应该做的或至少文档所说的创建任何 html 页面模板。
from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy
from flask.ext.admin import Admin
from flask.ext.admin.contrib.sqla import ModelView
app = Flask(__name__)
db = SQLAlchemy(app)
db_uri = 'mysql://{u}:{p}@{h}/{s}?charset=utf8&use_unicode=1'
app.config['SQLALCHEMY_DATABASE_URI'] = db_uri.format(u='root',
p='matching',
h='127.0.0.1',
s='master_v2')
app.config['SQLALCHEMY_ECHO'] = True
db = SQLAlchemy(app)
class UserView(ModelView):
column_list = ('name', 'email')
column_searchable_list = ('name', 'email')
column_filters = ('name', 'email')
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(64), unique=True)
email = db.Column(db.String(128))
admin = Admin(app)
admin.add_view(UserView(User, db.session))
me = User(name='me', email='me@mail.com')
you = User(name='you', email='you@gmail.com')
db.create_all()
db.session.add(me)
db.session.add(you)
db.session.commit()
app.run()
一旦我转到http://127.0.0.1:5000/admin/user/,它实际上会返回一个 HTML 页面,其中包含一个包含我在脚本中插入的值的表格。 那么这个页面究竟是如何加载的呢?
【问题讨论】:
标签: python jinja2 flask-sqlalchemy flask-admin