即插视图
来源:互联网 发布:加拿大地缘政治知乎 编辑:程序博客网 时间:2024/05/17 08:00
#__________________即插视图________________#例子说明:如果有一个从数据库载入对象,然后渲染的函数#1.最简单的是实现方法@app.route('/users/')def show_users():users = User.query.all()return render_template('user.html',users=users)#2.改进下第一种方法from flask.views import Viewclass ShowUsers(View):def dispatch_request(self):users = User.query.all()return render_template('user.html',object=users)app.add_url_rule('/users/',ShowUsers.as_view('show_users'))#3.前两种方法复用性不高,重新优化一下class ListView(View):def get_template_name(self):raise NotImplementedError()#父类传空值,子类负责继承重写def render_template(self,context):return render_template(self.get_template_name,**context) #重写render_template函数,第一个参数写传参的模板名称,第二个参数传所要填充的数据def dispatch_request(self):context = {'objects':self.get_ojects()}return self.render_template(context)#处理请求从子类填充实例数据,构成完整的渲染请求class UserView(ListView):def get_template_name(self):return 'users.html'def get_objects(self):return User.query.all()class RenderTemplateView(View): def __init__(self,template_name): self.template_name = template_name def dispatch_request(self): return render_template(self.template_name)#子类负责传输数据,父类负责构建模板#父类相当于一个工厂函数,需要子类向其提供数据#子类中的get_template_name告诉父类要渲染的视图函数名称#子类中的get_object告诉父类要渲染的实例数据app.add_url_rule(UserView)
阅读全文
0 0
- 即插视图
- Flask 即插视图中使用 url_for 获取重定向的目标路径
- flask即插视图文档例子运行错误: if self.url_rule and '.' in self.url_rule.endpoint
- 视图插值
- mfc中视图类加载图片并立即刷新
- activity界面架构即activity视图层结构
- UITableView: 刷新视图、插入行、更新行的两种方式
- 视图模型转换矩阵的推导也是关于gluLookAt函数即视图转换矩阵的推导及代码实现
- Sql 存储过程 即返回结果集又返回值 以及动态创建视图
- inputView与inputAccessoryView的使用,即自定义控件的响应视图
- swift中UI适配,即视图控件在导航栏下面开始显示
- swift中UI适配,即视图控件在导航栏下面开始显示
- swift中UI适配,即视图控件在导航栏下面开始显示
- eclipse自动切换到dubug视图,即怎么设置eclipse调试自动跳转
- iOS开发 适配7系统和解决视图高度一直为480(即上下部分黑屏)
- 插值
- 插削
- 插值
- 第三周 文件查看命令及用户管理命令
- Hadoop问题汇总
- 关于一个页面中引入另一个页面 bootstrap引用Js失效的坑
- intellij idea 使用 git stash 初探
- luogu 1003铺地毯
- 即插视图
- [CQOI2007]余数求和
- FilenameFilter总结
- IO操作-ObjectInputStream演示
- java详解 --- 泛型
- 记录应用错误
- UVa
- 第15周项目1
- ubuntu第二、三天(时光穿梭机)--学习资源来自廖雪峰博客