随笔分类 -  flask-web开发

上一页 1 ··· 3 4 5 6 7 8 下一页
摘要:首先明确一点:直接使用ip地址和localhost不能用子域名 主域名实现 首先做一项配置,将本地host映射一个域名 在app的config中指定 SERVER_NAME 选项为配置的域名:端口号 启动flask程序,访问 子域名实现 在蓝图中通过subdomain来指定子域名 在本地host文件 阅读全文
posted @ 2019-11-05 17:54 向前走。 阅读(330) 评论(0) 推荐(0)
摘要:模板文件: 根目录下的templates-->蓝图定义时指定的位置-->(若有相同名字的文件,则加载根目录下的资源)1、在蓝图的情况下,寻找静态资源依旧是默认从主目录的templates2、如果在根目录下的static和templates中没有找到指定文件,则会从蓝图声明时指定的文件夹下去找3、若默 阅读全文
posted @ 2019-11-05 17:07 向前走。 阅读(580) 评论(0) 推荐(0)
摘要:蓝图用于将项目模块化,分开管理 比如项目有4个模块:用户管理、书籍、电影、新闻,如果放在一起不好管理也不好维护,可以将每个模块单独抽离出来,再同一使用,flask.Blueprint可以实现功能 Blueprint源码 项目蓝图分类: 以user模块为例 使用蓝图可以在定义的时候使用 url_pre 阅读全文
posted @ 2019-11-05 16:18 向前走。 阅读(449) 评论(0) 推荐(1)
摘要:对于url的保护,一般是通过装饰器实现,如:某个页面需要登录后才能访问 函数视图实现 类视图实现类视图中的装饰器,需要重写类视图的一个类属性:decorators,这个列属性是列表或者元祖都可以,需要用多个装饰器时,按执行顺序放进去就行,会按里面的装饰器顺序执行,View中源码如下 如:以上面那个案 阅读全文
posted @ 2019-11-04 23:12 向前走。 阅读(297) 评论(0) 推荐(0)
摘要:调度方法的视图基于flask.view.MethodView实现,根据请求方法的不同,执行类视图下对应的方法,只要是请求方法都可以定义:get、post、put、delete··· 拿登录来说 也可以将渲染模板单独抽离出来 阅读全文
posted @ 2019-11-04 22:40 向前走。 阅读(340) 评论(0) 推荐(0)
摘要:标准视图继承自flask.view.View as_view源码 1、标准视图继承自flask.view.View2、并且在子类中必须实现dispatch_request方法,以后请求过来后,都会执行这个方法,这个方法的返回值就相当于是之前的函数视图一样,也必须返回Response或者子类的对象,或 阅读全文
posted @ 2019-11-04 22:02 向前走。 阅读(480) 评论(0) 推荐(0)
摘要:flask注册视图有两种方式 一:add_url_rule()add_url_rule源码:rule:接口地址view_func=视图函数endpoint=终结点,可以理解为给当前视图取的别名,最直观的就是在url_for()的时候会用到,如果指定了endpoint,则在url_for()的时候,不 阅读全文
posted @ 2019-11-04 20:46 向前走。 阅读(701) 评论(0) 推荐(0)
摘要:模板继承可以把有共性的一些代码抽出来放到父模板中,其他需要次特性的文件继承模板即可 在jinja2中,使用extends来继承定义好的模板,使用{% block 位置名%} {% endblock %}来预留位置 自己需要定义一个父模板 其他html继承base模板即可拥有所有的模块 block继承 阅读全文
posted @ 2019-11-02 23:48 向前走。 阅读(1434) 评论(0) 推荐(0)
摘要:静态文件: flask默认指定的静态文件路径为根目录下的static,可以自定义路径,并指定,使用url_for('文件夹', filename='文件名')引用 加载css文件 加载js文件 其他文件加载方式一样,只不过需要根据具体文件类型使用不同的标签 阅读全文
posted @ 2019-11-02 22:56 向前走。 阅读(1767) 评论(0) 推荐(0)
摘要:set jinja2模板内部可以用set定义变量,只要定义了这个变量,在后面的代码中都可以使用此变量 with 如果想让定义的变量只在部分作用域内有效,则不嫩更实用set,需使用with定义,with中定于的变量,稚嫩你在with语句中使用,超出范围无效 阅读全文
posted @ 2019-11-02 22:38 向前走。 阅读(5098) 评论(0) 推荐(0)
摘要:用于将页面的某一块地方抽取出来,要嵌入内容的时候使用,继承的概念 把具体内容分别放到其他地方同一管理,要用的时候使用include继承 使用include的时候可以直接使用接收的数据 阅读全文
posted @ 2019-11-02 22:19 向前走。 阅读(1847) 评论(0) 推荐(0)
摘要:宏有点类似于函数,接收一些数据,进行处理,但是没有返回值,可以将一些常用的代码片段放到宏中,然后把不固定的值抽出来做变量 使用maacro来定义宏,使用宏的时候,参数可以设默认值 自定义一个input标签 真实工作情况下是把宏单独封装起来,要用的时候导入使用(起点路径为templates),导入的方 阅读全文
posted @ 2019-11-02 21:55 向前走。 阅读(384) 评论(0) 推荐(0)
摘要:jinja2中的逻辑语句和python中的基本一致,执行逻辑的时候用{% 逻辑关键字 %}开始,{% end逻辑关键字 %}结束 if语句(判断关键字也是一样的,and、or、not···): for循环,与python的for语法一致,但不可以使用continue和break来控制循环的执行 列表 阅读全文
posted @ 2019-11-02 18:04 向前走。 阅读(4150) 评论(0) 推荐(0)
摘要:过滤器的本质就是函数,如果在模板中调用这个过滤器,那么就会将这个变量的值作为第一个参数传给过滤器函数,然后将函数的返回值作为滤器的返回值 1、在python文件中写好过滤的函数和逻辑2、将将函数注册到模板过滤器中:@app.template_filter('过滤器名')3、在模板中调用过滤器:变量| 阅读全文
posted @ 2019-11-02 16:03 向前走。 阅读(2256) 评论(0) 推荐(0)
摘要:1、abs:返回一个数的绝对值(见上一篇)2、default:如果当前变量没有值或字段,则展示默认值(见上一篇) 3、转义过滤器:如果后端出过来的值含html标签,可以控制是否视为html标签执行或者当成字符串处理 escape或e:转义符:会将<、>等html标签符号转义成html中的可展示符号( 阅读全文
posted @ 2019-11-02 15:38 向前走。 阅读(4629) 评论(0) 推荐(1)
摘要:在模板里面有时候需要对传过来的数据进行一些处理,jinja2有一些内置的过滤器可以进行处理。类似于python内置函数,通过 “|” 进行使用,详见jinja2官方文档 使用方法:{{ 变量名|过滤器名 }} 如:内置过滤器abs:作用为返回一个数的绝对值 default过滤器:如果传过来的数据有此 阅读全文
posted @ 2019-11-02 14:30 向前走。 阅读(2576) 评论(0) 推荐(0)
摘要:在页面中,有点击跳转到另一个地址的时候,可以使用url_for来指定要跳转的视图函数:{{ url_for('view_function') }} 如果该视图需要接收参数 阅读全文
posted @ 2019-11-02 00:25 向前走。 阅读(2876) 评论(0) 推荐(0)
摘要:从后台传参到模板,模板再渲染到前端 传参的时候,可以在html后面加上关键字传参,在模板里面用{{ 参数 }}使用即可,可以传多个参数 也可以使用**传参,取值的时候就直接取内容 阅读全文
posted @ 2019-11-02 00:04 向前走。 阅读(1226) 评论(0) 推荐(1)
摘要:jinja2用于渲染模板 查找路径 1、默认从项目根目录下的templates下面找指定的html文件 也可以往下新建路径 2、指定自定义路径 在Flask的源码中,指定了默认路径为templates 所以可以使用template_folder参数指定自定义路径 阅读全文
posted @ 2019-11-01 23:41 向前走。 阅读(1070) 评论(0) 推荐(0)
摘要:1.如果返回的是个合法的响应对象,则直接返回 同时,也可以在response里面做一些操作,比如增加cookie 2.如果返回的是一个字符串,那么flask会重新创建一个werkzeug,wrappers,Response对象,Response将该字符串作为主体,状态码为200,MIME的类型为te 阅读全文
posted @ 2019-11-01 23:11 向前走。 阅读(817) 评论(0) 推荐(0)

上一页 1 ··· 3 4 5 6 7 8 下一页