Flask 知识点

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()
可以发现数据库中已经存在这些属性了。

修改行

删除行

查询行

posted @ 2019-03-20 15:48  P_PlusUltra  阅读(303)  评论(0编辑  收藏  举报