flask_app/config.py
class SystemConfig:
DEBUG = True
SQLALCHEMY_DATABASE_URI = 'mysql://{user}:{password}@{host}/{db_name}?charset=utf8'.format(**{
'user': 'root',
'password': 'password',
'host': 'localhost',
'db_name': 'sample'
})
SQLALCHEMY_TRACK_MODIFICATIONS = "false"
Config = SystemConfig
flask_app/controllers/member.py
from flask import Blueprint, render_template, request, redirect
from ..models.user import User
member = Blueprint("member", __name__, url_prefix='/member')
@member.route('/')
def index():
users = User.getAll()
return render_template('member/index.html', users = users)
flask_app/__init__.py
from flask import Flask
from .database import db
from .config import *
from .controllers.myapp import myapp
from .controllers.member import member
def create_app():
app = Flask(__name__)
app.config.from_object(config.Config)
db.init_app(app)
app_name = [
myapp,
member
]
for i in app_name:
app.register_blueprint(i)
return app
flask_app/models/user.py
from ..database import db
class User(db.Model):
__tablename__ = 'users'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(255), nullable=False)
age = db.Column(db.Integer, nullable=False)
def getAll():
return db.session.query(User).all()
flask_app/templates/member/index.html
{%- extends "./share/layout.html" %}
{%- block content %}
<h1>Member/index.html</h1>
<table>
{% for user in users %}
<tr>
<td>{{user.id}}</td>
<td>{{user.name}}</td>
<td>{{user.age}}</td>
</tr>
{% endfor %}
</table>
{%- endblock %}