zoukankan      html  css  js  c++  java
  • 转换器2:ThinkPhp模板转Django模板

    前天写了个《ThinkPhp模板转Flask模板》

    居然被同事鄙视了,原因是他用Django,我用Flask,为了避免被他继续安利Django的强大。我决定写一个Django模板转换器。

    为了复用代码,得用继承,我把原代码分成三段,一下子获得了三个转换器。

    class ConverterTemplateEncoding(object):
        separators = [('<', '>')]
    
        def __init__(self):
            self.match = {'opening': 0, 'closing': 0, 'extra': 0, 'script': '', 'content': '', 'cache': '', 'separator': ()}
    
        def convert_tag(self, tag, extra=''):
            return tag
    ...
    
    class ConverterThinkPhp2Jinja(ConverterTemplateEncoding):
        separators = [('{', '}'), ('__', '__'), ('<', '>'), ('<?', '?>')]
    
    
    class ConverterThinkPhp2Django(ConverterThinkPhp2Jinja):
        pass

    我没有说的是Flask模板与Django模板其实相差无几,至少我没有实现。哈。

    if __name__ == '__main__':
        ConverterThinkPhp2Jinja().convert_templates('src', 'dst')

    源码:converterV0.2.zip

  • 相关阅读:
    蛇形填数
    A Famous Music Composer
    Java用筛子法求素数
    素数求和问题
    Java中数组的快排
    大数阶乘
    Binary String Matching
    括号配对问题
    Android Studio安装和使用
    Android Studio使用手册
  • 原文地址:https://www.cnblogs.com/windfic/p/6501129.html
Copyright © 2011-2022 走看看