websocket搭建简单的网页聊天室框架【续2】——关于Flask Blueprint

聊天室的链接已经失效!因为我部署了一个新的网站,欢迎大家访问mytodo.vip


作为聊天室http://180.76.50.50/的管理员,我要看到所有的聊天记录,可以在后台查找数据库数据,但现在这个聊天室的数据是放在远程linux服务器的MongoDB中的,登录过去查找不太方便,于是我打算写一个页面可以看到所有的聊天记录页面。


Flask有个Blueprint功能,之前没用过,正好在这试用一下。新建一个views.py,核心代码如下:

from flask import Blueprint

admin = Blueprint('admin', __name__)

那么就建立了一个名为'admin'Blueprint,运行服务器的py文件中加入以下语句:

from views import admin

app.register_blueprint(admin, url_prefix='/admin')

即将admin导入过来,然后用Flask App去注册这个Blueprint,接下来就可以正常在views.py中写视图函数了,但此时要使用@admin.route而不是@app.route。假设views.py有个视图函数注册了/login/这个url,那么它实际的url/admin/login/,即需要加上app注册Blueprint时的url_prefix,这样就能把admin相关的功能和视图函数都写在views.py里,不用写在主py文件中。


因为只有管理员才能看到所有的聊天记录,我把验证方式放在了urlquery中,如图:
websocket搭建简单的网页聊天室框架【续2】——关于Flask Blueprint
urln=15表示查看最近15条聊天记录,auth=xxx是验证身份,xxx是我设置的密码。


完整代码请见GitHub

相关推荐