首页 > 代码库 > 转换器2:ThinkPhp模板转Django模板

转换器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

 

转换器2:ThinkPhp模板转Django模板