flask run时候端口占用的问题
终端 lsof -i:5000
kill <端口号>
强制删除 kill -s 9 <端口号>
给网页标题添加icon
{% block head %}
{{ super() }}
<link rel="icon" href="{{ url_for('static', filename='favicon.ico') }}" >
{% endblock %}
使用bootstrap
from flask_bootstrap import Bootstrap
app = Flask(__name__)
bootstrap = Bootstrap(app) #实例化Bootstrap
然后在模板里开头{% extends "bootstrap/base.html" %}
flask_moment模块
from flask_moment import Moment
moment=Moment(app) #实例化
然后在模板页面里加入下面这个script块
{% block scripts %}
{{ super() }}
{{ moment.include_moment() }}
{% endblock %}
然后就可以调用moment.js的各种方法
比如:
current_time变量是从视图函数中传过来的
from datetime import datetime
current_time=datetime.utc()
<p>本地时间为{{ moment(current_time).format('LLL') }}</p>
<p>
That was {{ moment(current_time).fromNow(refresh=True) }}
</p>
WTForms
WTForms支持的HTML标准字段
WTForms验证函数
Flask-SQLAlchemy
定义表类
常用的SQLALchemy列类型
常用的SQLALchemy列选项
数据库操作
创建了Role和User模型,
__tablename__表示表名
模型创建好之后创建数据库和表
第一步根据模型创建数据库,
from hello import db
db.create_all()
然而这些对象还只存在在Python中,未写入数据库。
第二步把这些对象加入到数据库会话中
db.session.add(admin_role)
一个一个加或者一口气加: db.session.add_all([admin_role,mode_role])
第三步把对象写入数据库,提交会话
db.session.commit()
可以发现数据库中已经存在这些属性了。
修改行
删除行
查询行