변환기 2: ThinkPhp 템플릿에서 Django 템플릿 변환

4358 단어
그저께'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

좋은 웹페이지 즐겨찾기