tornado web frame:

非阻塞服务器,速度快,运用epoll

模板语言+render(),实现根据用户输入,自动渲染页面的动态效果。

在使用模板前需要在setting中设置模板路径:

settings = {

"template_path" : "xxoo";

"static_path“:"ooxx"

"static_usr_prefix":"ox"

}

一、快速实现:

  第一步 创建子类

  第二布 创建application

  第三部 run

二、模板引擎

在html中使用方式有:

  {%if/else/for/while/try%} ...{%end%}   structrue 结构

  {{expression/variable}}  表达式   》》》》需要后端程序中传入变量的值,以键值对的形式: self.render('index.html',ooxx=input_list,aaa=word)

  

  {%module myclass()%}  UImodules

  {{func()}} UImethods

UImethods   /    UImodules

定义 >> 导入+注册>> 使用

定义UImethod:

# uimethods.py

def tab(self):
    return 'UIMethod'

定义UImodules

#!/usr/bin/env python
# -*- coding:utf-8 -*-
from tornado.web import UIModule
class custom(UIModule):
    def render(self, *args, **kwargs):
        return 123

导入+注册

import uimodules as md
import uimethods as mt

settings = {
    'ui_methods': mt,
    'ui_modules': md,
}

  

使用

<body>
    <h1>hello</h1>
    {% module custom(123) %}
    {{ tab() }}
</body>

内置模板函数 ,重点使用   static_url()

eg: <link href="{{static_url("commons.css")}}" rel="stylesheet" />

效果:自动索引到后台的静态文件,并且生成md5值,返回到客户

<link href="/sss/common.css?v=114b63a591fc6e890f095ddc302666f9" rel="stylesheet" />

模板引擎的原理:

  html  --> 转换成 字符串函数 “def  func():....” ---> compile + exec + 全局变量 --> 执行

  详情见 :https://www.cnblogs.com/wupeiqi/p/4592066.html

cookies

  self.set_cookie('key','value')

  value = self.get_cookie('key')

签名cookie

  self.set_secure_cookie("mycookie", "myvalue")

  self.get_secure_cookie("mycookie")  

  settings = {'cookie_secret': 'aiuasdhflashjdfoiuashdfiuh'}

    

tornado web的更多相关文章

  1. Python(九)Tornado web 框架

    一.简介 Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google 的 webapp,不过 ...

  2. tornado web 框架的认识

    tornado 简介 1,概述 Tornado就是我们在 FriendFeed 的 Web 服务器及其常用工具的开源版本.Tornado 和现在的主流 Web 服务器框架(包括大多数 Python 的 ...

  3. tornado 学习笔记9 Tornado web 框架---模板(template)功能分析

            Tornado模板系统是将模板编译成Python代码.         最基本的使用方式: t = template.Template("<html>{{ myv ...

  4. tornado web高级开发项目之抽屉官网的页面登陆验证、form验证、点赞、评论、文章分页处理、发送邮箱验证码、登陆验证码、注册、发布文章、上传图片

    本博文将一步步带领你实现抽屉官网的各种功能:包括登陆.注册.发送邮箱验证码.登陆验证码.页面登陆验证.发布文章.上传图片.form验证.点赞.评论.文章分页处理以及基于tornado的后端和ajax的 ...

  5. Tornado web.authenticated 用户认证浅析

    在Web服务中会有用户登录后的一系列操作, 如果一个客户端的http请求要求是用户登录后才能做得操作, 那么 Web服务器接收请求时需要判断该请求里带的数据是否有用户认证的信息. 使用Tornado框 ...

  6. 浅析tornado web框架

    tornado简介 1.tornado概述 Tornado就是我们在 FriendFeed 的 Web 服务器及其常用工具的开源版本.Tornado 和现在的主流 Web 服务器框架(包括大多数 Py ...

  7. Tornado web 框架

    Tornado web 框架 其实很简单.深度应用 一.简介 Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像we ...

  8. tornado.web.Application类配置及使用

    Application configuration classtornado.web.Application(handlers=None, default_host='', transforms=No ...

  9. tornado web框架

    tornado web框架 tornado简介 1.tornado概述 Tornado就是我们在 FriendFeed 的 Web 服务器及其常用工具的开源版本.Tornado 和现在的主流 Web ...

  10. tornado web高级开发项目

    抽屉官网:http://dig.chouti.com/ 一.配置(settings) settings = { 'template_path': 'views', #模板文件路径 'static_pa ...

随机推荐

  1. 20145311 王亦徐《网络对抗技术》 逆向及BOF进阶实践

    20145311<网络对抗技术>逆向及BOF进阶实践 学习目的 shellcode注入:shellcode实际是一段代码,但却作为数据发送给受攻击服务器,将代码存储到对方的堆栈中,并将堆栈 ...

  2. Python3基础 list enumerate 将列表的每个元素转换成 带索引值的元组

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  3. vi中如何使用cscope来查找函数的定义

    答:进入命令行模式输入:cs f g <function_name>

  4. Ubuntu package system is broken

    原文链接安装软件的时候出现错误,遇到包管理系统损坏的问题.在askubuntu上找到解决办法,这里进行记录总结:首先:sudo apt-get -f install 强制安装没有下载完成的文件.然后: ...

  5. fedora23 桌面工具栏fedy, 桌面美化 allow: 2'lau不是2'l2u

    ## Sudoers allows particular users to run various commands as ## the root user, without needing the ...

  6. Miller_Rabin整理笔记

    目录 问题 别的 正事 代码 问题 一个数到底是不是素数 别的 首先列一下我们可以求素数的东西 根号暴力求 \(O(nloglogn)\)的埃氏筛 \(O(n)\)的欧拉筛 还有我们要学习的Mille ...

  7. extern 用法,全局变量与头文件(重复定义)

    转自 https://www.cnblogs.com/chengmin/archive/2011/09/26/2192008.html 当你要引用一个全局变量的时候,你就要声明,extern int  ...

  8. 【做题】CF388D. Fox and Perfect Sets——线性基&数位dp

    原文链接https://www.cnblogs.com/cly-none/p/9711279.html 题意:求有多少个非空集合\(S \subset N\)满足,\(\forall a,b \in ...

  9. Sql Ado.net 学习笔记之连接字符串

    https://www.cnblogs.com/heng95/p/5902019.html 连接字符串 SQL Client .net数据提供程序在连接到数据库时极其灵活,它提供了多种用以生成连接字符 ...

  10. P2475 [SCOI2008]斜堆(递归模拟)

    思路 可并堆真是一种神奇的东西 不得不说这道题是道好题,虽然并不需要可并堆,但是能加深对可并堆的理解 首先考虑斜堆的性质,斜堆和左偏树相似,有如下的性质 一个节点如果有右子树,就一定有左子树 最后插入 ...