面向web设计人员的Python模板

面向web设计人员的Python模板,python,templating,Python,Templating,对于网页设计师来说,有哪些好的模板引擎?作为一名程序员,我当然有自己的偏好。但网页设计师似乎有不同的思考方式,因此可能更喜欢不同的系统 因此: 网页设计师:你喜欢使用什么样的模板引擎 程序员:您使用过哪些模板引擎使web设计师的工作变得简单 我个人觉得对设计师非常友好。需要一些时间的是模板子类化的想法,而这在一开始是很难做到的。但是设计师创建了一个完整的模板,复制他的代码。。。然后你可以把东西清理一下。相当不错。它非常健壮,同时不会踩太多的脚趾。如果您正在使用Python,我建议您使用它。我不

对于网页设计师来说,有哪些好的模板引擎?作为一名程序员,我当然有自己的偏好。但网页设计师似乎有不同的思考方式,因此可能更喜欢不同的系统

因此:

  • 网页设计师:你喜欢使用什么样的模板引擎
  • 程序员:您使用过哪些模板引擎使web设计师的工作变得简单
我个人觉得对设计师非常友好。需要一些时间的是模板子类化的想法,而这在一开始是很难做到的。但是设计师创建了一个完整的模板,复制他的代码。。。然后你可以把东西清理一下。

相当不错。它非常健壮,同时不会踩太多的脚趾。如果您正在使用Python,我建议您使用它。我不知道如何将它从Django中分离出来,但我怀疑这将是非常困难的,因为Django是非常模块化的

编辑:很明显,那辆车已经坐在我前面了,谢谢。

看看

以下是我如何与网页设计师打交道

  • 让他们模拟这一页。在HTML中
  • 使用HTML作为模板的基础,将模拟内容替换为
    ${…}
    replacements
  • 在循环中折叠以处理重复
  • if语句的使用需要协商,因为模型是页面的一个版本,并且通常对某些材料的有条件呈现有一些解释。

    我在投票时投了好票

    我的回答是:

    很好,很好

    融合良好。可以是沙盒,因此您不必完全信任模板作者。(Mako不能)

    它也非常快,还可以将模板编译为字节码并缓存,如下面的演示所示:

    >>> import jinja2
    >>> print jinja2.Environment().compile('{% for row in data %}{{ row.name | upper }}{% endfor %}', raw=True) 
    from __future__ import division
    from jinja2.runtime import LoopContext, Context, TemplateReference, Macro, Markup, TemplateRuntimeError, missing, concat, escape, markup_join, unicode_join
    name = None
    
    def root(context, environment=environment):
        l_data = context.resolve('data')
        t_1 = environment.filters['upper']
        if 0: yield None
        for l_row in l_data:
            if 0: yield None
            yield unicode(t_1(environment.getattr(l_row, 'name')))
    
    blocks = {}
    debug_info = '1=9'
    

    这段代码是由Jinja2动态生成的。当然,编译器会进一步对其进行优化(例如,如果0:yield None,则删除

    Mi投票,这是0.11之前的Trac中使用的模板引擎,它也用于Google Group或Orkut等页面。此模板引擎的主要优点是速度非常快且与语言无关。

    要添加到@Jaime Soriano的评论中,是Trac post-0.11中使用的模板引擎。它可以用作通用模板解决方案,但重点是HTML/XHTML。它具有自动转义功能,可以减少XSS漏洞。

    我扮演了这两个角色,从本质上讲,我更喜欢程序员的模板语言。但是,我是一些图形设计师的自由撰稿人,从事“繁重”的后台和db编程,我可以告诉您,我在XML模板语言(SimpleTAL、Genshi等)方面运气最好

    当我试图对网页设计师友好时,我会寻找一些可以加载到Dreamweaver中并看到结果的东西。这使我能够提供模板中的所有挂钩,并让设计师调整它,而不用担心破坏我已经编写的内容。它允许我们共享代码,并在我们都熟悉格式的地方更好地协同工作


    如果设计器代码没有所见即所得编辑器,我认为您的选项就没有那么有限,您可以选择自己的最爱。

    这不是一个骗局。我问什么是与网页设计师打交道的好引擎,而不是什么是最好的引擎