自定义模板方法(类似django中的simple_tag) | Tornado

# 自定义模板方法|相当于django中的simple_tag以及filter;
# 1.uimethods.py
    def tag_one(self):
        print(self)
        return ‘tags‘
# 2.uimodules.py
    from tornado.web import UIModule
    from tornado import escape

    class Custom(UIModule):
        def embedded_css(self):
            # 页面添加css样式
            return ‘body{color:blue;}‘
        def css_files(self):
            # 前端引入css文件
            return ‘set.css‘
        def render(self, *args, **kwargs):
            print(args, kwargs)
            return ‘<h1>miaokela</h1>‘
            # return escape.xhtml_escape(‘<h1>miaokela</h1>‘)
# 5.tornado_test.py
    # uimodules除了显示页面内容,还可以在后台自定制JS与CSS;
    import uimethods as mt
    import uimodules as md
    # 8.配置静态文件
    settings = {
        # 静态文件目录
        ‘static_path‘: ‘static‘,
        # url请求时前缀,如果不加,默认是项目根目录下绝对路径;
        ‘static_url_prefix‘: ‘/test/‘,
        # 模板文件路径
        ‘template_path‘: ‘templates‘,
        # 自定义模板方法
        ‘uimethods‘: mt,
        ‘uimodules‘: md,
    }

# 4.login.html
    <h1>登录:{{ tag_one }}{% module Custom() %}</h1>
时间: 2024-10-06 08:11:38

自定义模板方法(类似django中的simple_tag) | Tornado的相关文章

web.py中实现类似Django中的ORM的查询效果

Django中的对象查询 Django框架自带了ORM,实现了一些比较强大而且方便的查询功能,这些功能和表无关.比如下面这个例子: class Question(models.Model): question_text = models.CharField(max_length=200) pub_date = models.DateTimeField('date published') >>> Question.objects.all() >>> Question.ob

Django中的tags,母版和继承,组件,静态文件相关,自定义simpletag和自定义inclusion_tag

Tags for <ul> {% for user in user_list %} <li>{{ user.name }}</li> {% endfor %} </ul> for循环可用的一些参数: Variable Description forloop.counter 当前循环的索引值(从1开始) forloop.counter0 当前循环的索引值(从0开始) forloop.revcounter 当前循环的倒序索引值(从1开始) forloop.rev

Django中的日期处理注意事项和自定义时间格式转换

我们在用Django创建models时,常常会涉及时间日期字段的处理,Django里日期相关Field有DateTimeField.DateField和TimeField三种类型,看似简单,但其中有一些容易出错的地方需要注意:另外,如果不习惯Django的默认时间格式,也可以自定义的修改. DateTimeField.DateField和TimeField,其值分别对应着Python里的datetime.datetime.datetime.date和datetime.time三个实例,这三个Fi

NetBeans自定义代码折叠块,类似vs中的#region

//<editor-fold defaultstate="collapsed" desc="测试代码折叠"> echo '<script type="text/javascript">'; echo "alert('当前类目下有文章,不能删除!');"; echo "history.go(-1)"; echo "</script>"; exit;//&

C#自定义双向链表,功能类似C++中的CList

参照博客: http://www.cnblogs.com/linzheng/news/2011/07/14/2106530.html. http://blog.csdn.net/dongxinxi/article/details/6303421 C#自定义双向链表,功能类似C++中的CList,布布扣,bubuko.com

Django中的日期和时间、DateField.auto_now、DateField.auto_now_add

前言 创建django的model时,有DateTimeField.DateField和TimeField三种类型可以用来创建日期字段,其值分别对应着datetime().date().time()三种对象.这三个field有着相同的参数auto_now和auto_now_add,在实际使用中很容易出错. DateTimeField class DateField(auto_now=False, auto_now_add=False, **options) # 默认 日期,由 datetime.

Django中的app及mysql数据库篇(ORM操作)

Django常见命令 在Django的使用过程中需要使用命令让Django进行一些操作,例如创建Django项目.启动Django程序.创建新的APP.数据库迁移等. 创建Django项目 一把我们都新建一个文件夹来存放项目文件,切换到这个目录下,启动命令行工具.创建一个名为mysite的Django项目: django-admin startproject mysite 创建好项目之后,可以查看当前目录下多出一个名为mysite的文件夹,mysite的文件夹目录结构如下: mysite/ ma

转 Django中的Form

https://www.cnblogs.com/chenchao1990/p/5284237.html Form 一.使用Form Django中的Form使用时一般有两种功能: 1.生成html标签 2.验证输入内容 要想使用django提供的form,要在views里导入form模块 from django import forms 然后再定义一个类,这个类就是要在前端html页面中生成form表单中的input标签的. 1 class UserInfo(forms.Form): 2 ema

在django中,执行原始sql语句

extra()方法 结果集修改器,一种提供额外查询参数的机制 使用extra: 1:Book.objects.filter(publisher__name='广东人员出版社').extra(where=['price>50']) Book.objects.filter(publisher__name='广东人员出版社',price__gt=50) 2:Book.objects.extra(select={'count':'select count(*) from hello_Book'}) ra