首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >web设计器的Python模板

web设计器的Python模板
EN

Stack Overflow用户
提问于 2008-10-18 03:56:06
回答 7查看 1.9K关注 0票数 5

哪些是好的网页设计师模板引擎?作为一名程序员,我当然有自己的喜好,想要做什么工作。但网页设计师似乎有一种不同的思维方式,因此可能更喜欢不同的系统。

所以:

  • 网页设计师:你更喜欢使用什么模板引擎?
  • 程序员:您使用过哪些模板引擎,使与网页设计人员的工作变得容易?
EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2008-10-18 11:35:15

看看马科

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

  1. 让他们模仿这一页。在HTML中。
  2. 使用HTML作为模板的基础,用${...}替换替换模拟的内容。
  3. 折叠循环以处理重复。

如果语句的使用需要协商,因为模拟是页面的一个版本,对于某些材料的有条件表示通常有一些解释。

票数 5
EN

Stack Overflow用户

发布于 2008-10-18 06:14:36

Django模板引擎相当正派。它很结实,而且不会踩到太多的脚趾。如果您正在使用Python,我会推荐它。我不知道如何将它与Django分离,但我怀疑这将是非常困难的,因为Django是相当模块化的。

编辑:显然使用Django的模板引擎的迷你指南已经坐在我面前了,谢谢insin

票数 6
EN

Stack Overflow用户

发布于 2008-10-18 12:00:40

回答同样的问题的时候我有很好的选票。

我的回答是:

Jinja2

不错的语法,好的定制可能性

整合得很好。可以被沙箱化,所以您不必完全信任模板作者。(Mako不能)。

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

代码语言:javascript
复制
>>> 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动态生成的。当然,编译器会进一步优化它(例如删除if 0: yield None)。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/214536

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档