当前位置: 首页 > news >正文

网站建设分金手指专业十四佛山网站建设方案

网站建设分金手指专业十四,佛山网站建设方案,自己做的网站某些电脑打不开,音乐网站建设教程视频目录 一.类视图 二.蓝图 一.类视图 在Flask中#xff0c;可通过视图函数展示视图 http://t.csdnimg.cn/r6IFG 也可基于类实现#xff0c;类视图的好处是支持继承。标准类视图是继承flask.views模块中基类View的子类 from flask.views import View 该子类中必须重写View…目录 一.类视图 二.蓝图  一.类视图 在Flask中可通过视图函数展示视图 http://t.csdnimg.cn/r6IFG 也可基于类实现类视图的好处是支持继承。标准类视图是继承flask.views模块中基类View的子类 from flask.views import View 该子类中必须重写View类中的dispatch_request()方法。除dispatch_request()方法外我们也可以根据需要向View子类中添加其他方法或属性。 •methods属性设置当前类视图可以处理的请求方式列表。 •dispatch_request()方法用于实现处理不同HTTP请求的具体逻辑该方法可以通过关键字参数接收URL传递的参数。 •as_view()方法用于将类转换为实际视图函数。as_view()方法必须传入一个name参数用于指定生成的视图函数名称也可以根据需要传入一些关键字参数这些参数都会转发给类的构造方法以创建类的实例并调用类内部的dispatch_request()方法。 如果希望类视图能够对浏览器发送的HTTP请求进行处理那么需要将类视图与URL建立映射关系。我们需要通过add_url_rule()方法将类视图与URL进行映射不过该方法的view_func参数不能直接传入类视图的名称而是需要传入通过as_view()方法将类视图转换后的视图函数。 from flask import Flask from flask.views import View class MyView(View): # 定义类视图def dispatch_request(self, name):# 重写dispatch_request()方法return fhello {name} app Flask(__name__) # 将类视图与URL规则进行映射 app.add_url_rule(/hello/name, view_funcMyView.as_view(myview)) if __name__ __main__:app.run()在类视图中通过methods属性设置当前类视图可以处理的请求方式。例如在上述示例的MyView类中设置当前类视图处理GET请求和POST请求并在dispatch_request()方法中添加处理GET请求的具体逻辑。 from flask.views import View class MyView(View): # 定义类视图methods [GET, POST] # 指定请求方式def dispatch_request(self, name): # 重写dispatch_request()方法if request.method GET:return fhello {name} app Flask(__name__) # 将类视图与URL规则进行映射 app.add_url_rule(/hello/name, view_funcMyView.as_view(myview))基于方法的类视图 在Flask中基于方法的类视图需要继承flask.views模块中的MethodView类而MethodView类继承View类 from flask.views import MethodView 由于MethodView类中已经重写了dispatch_request()方法所以定义基于请求方法的类视图时不需要重写dispatch_request()方法。 -  在基于方法的类视图中并非通过类属性methods来指定当前视图可以处理的请求方式而是通过定义与请求方式同名的方法来处理不同的请求。例如定义一个基于方法的类视图LoginView之后在该类中添加处理GET请求和POST请求的方法。 from flask import Flask from flask.views import MethodViewclass LoginView(MethodView):def get(self): # 处理GET请求return 我负责处理GET请求def post(self): # 处理POST请求return 我负责处理POST请求app Flask(__name__)#基于方法的类视图同样需要使用add_url_rule()方法将类视图与URL规则进行映射并将通过as_view()方法将类视图转换后的视图函数传入view_func参数。 app.add_url_rule(/login, view_funcLoginView.as_view(login))if __name__ __main__:app.run() 案例 1在templates文件夹中添加一个用于展示用户登录页面的模板文件login.html bodyform action methodpostspan用户名:/spanbrinput typetext nameusernamebrspan密码:/spanbrinput typepassword namepasswordbrpinput typesubmit value登录/p/form /body2在app.py文件中定义与使用基于方法的类视图 from flask.views import MethodView from flask import Flask, render_template, request class LoginView(MethodView):def get(self): # 处理GET请求return render_template(login.html)def post(self): # 处理POST请求username request.form.get(username) # 获取输入的用户名password request.form.get(password) # 获取输入的密码if username flask and password 123: # 判断用户名和密码是否为123return f用户{username}登录成功。else:return 用户名或密码错误请重新登录。 app Flask(__name__) app.add_url_rule(/login, view_funcLoginView.as_view(login))结果  二.蓝图  蓝图是一种制作应用程序组件的方式可以在应用程序内部或跨越多个项目使用。当分配请求时Flask会将蓝图和视图函数关联起来并生成两个端点之间的URL。 - 若想在Flask程序中使用蓝图首先需要创建蓝图然后再对蓝图进行注册其中创建蓝图需要通过Blueprint类实现注册蓝图需要通过register_blueprint()方法实现。 flask.Blueprint(name, import_name, static_folderNone, static_url_pathNone, template_folderNone, url_prefixNone, subdomainNone, url_defaultsNone, root_pathNone, cli_groupobject object) •name必选参数表示蓝图的名称。 •import_name必选参数表示蓝图包的名称通常为__name__。 •static_folder可选参数表示静态文件夹的路径。 •static_url_path可选参数表示静态文件的URL。 •template_folder可选参数表示模板文件夹路径。 •url_prefix可选参数表示附加到所有蓝图URL的路径用于与Flask应用程序的其他URL区分。 -假设Flask程序包含4个视图函数分别属于普通用户和管理员两个子模块。如果在该程序中使用蓝图那么使用蓝图前后的程序结构分别如下图 在项目的根目录下创建两个py文件分别是user.py和admin.py在这两个文件中分别创建user蓝图和admin蓝图 user.py from flask import Blueprint # 创建蓝图 user Blueprint(user, __name__) user.route(/login) def login():return user_login user.route(/register) def register():return user_registeradmin.py from flask import Blueprint # 创建蓝图 admin Blueprint(admin, __name__) admin.route(/login) def login():return admin_login admin.route(/add) def add():return admin_add- register_blueprint()方法用于将蓝图注册到Flask程序中。 register_blueprint(blueprint, url_prefix, subdomain, url_defaults,**options) •blueprint必选参数表示要注册的蓝图。 •url_prefix可选参数表示附加到所有蓝图URL的路径若在Blueprint类设置参url_prefix则会被该参数值覆盖。 - 在项目的app.py文件中使用register_blueprint()方法注册user蓝图和admin蓝图。 from admin import admin from user import user from flask import Flask app Flask(__name__) app.register_blueprint(admin, url_prefix/admin) # 将蓝图admin进行注册 app.register_blueprint(user, url_prefix/user) # 将蓝图user进行注册 if __name__ __main__:app.run()结果
http://www.yutouwan.com/news/347261/

相关文章:

  • 网站建设软著百度上搜不到网站
  • 集团网站设计建设做英文兼职的网站
  • 大连做网站 选领超科技宁波网站建设哪里有
  • 厦门汽车充电站建设报备网站wordpress博客栏目设计
  • 阿里巴巴的网站二维码怎么做域名注册网站哪个好
  • 青岛在线制作网站忻州企业网站建设
  • 三网合一网站 东莞南宁网站seo
  • 重庆建工集团建设网站优秀wordpress个人博客
  • wordpress建站的教程天华集团官网
  • 做企业网站需要什么条件中国建设银行春季招聘网站
  • jeecms做企业网站浙江的健康码小程序叫什么
  • 有哪些做统计销量的网站成都科技网站建设电话咨询
  • 网站排名优化服务如何形容一个网站做的好
  • 河北中太建设集团有限公司网站天猫商城支付方式
  • 建设法规的网站炫酷网站欣赏
  • 男女做视频网站秦皇岛网站开发
  • 保定 网站制作做一个app软件的步骤
  • 网站建设怎么做外国网站
  • 网站怎么找个人网站 免费
  • 免费的黄冈网站代码网站建设建站
  • 锦州网站设计骏域网站建设专家电话
  • 网站建设登录平板怎么做网页
  • 网站开发 会费管理 模块网站是怎么做新手引导
  • 为什么自己做的网站老是404错误做网站有必要要源码吗
  • 国内做网站建设知名的公司互联网产品运营是做什么的
  • 咸宁公司做网站网站外链平台
  • 设计网站推荐提升审美wordpress房产中介模板
  • 单位网站查询工资链接怎么做wordpress域名绑定
  • 免费搭建自助网站公司 网站建设
  • 做简单网站的框架图培训心得体会100字