代码之家  ›  专栏  ›  技术社区  ›  N S

针对python的php样式内联标记?

  •  3
  • N S  · 技术社区  · 14 年前

    我刚开始学习python(用于webapp),但我对如何将它与HTML文件和动态数据一起使用感到困惑。 我知道PHP有 <?php ?> 很好的标签——python是否有类似这样或类似的东西,如果没有,如何 应该 我在做什么?

    4 回复  |  直到 9 年前
        1
  •  6
  •   Ho1    9 年前

    php内联标记实际上倾向于鼓励一个坏的实践——即,将控制逻辑(php代码)与模板(html)混合在一起。大多数Python框架都倾向于避免这种混合,而是鼓励两者之间的分离——通常使用某种 templating system .

    许多框架都有自己的模板系统(例如, Django templating system 相当受欢迎)。其他人不允许您选择单独的模板引擎(如 Cheetah )

        2
  •  4
  •   easel    14 年前

    这里有一些PHP风格的python选项。mod_python曾经附带一个,而spyce有另一个实现,但是这种模式不适合pythonistas。相反,使用模板语言。根希和金贾2都很受欢迎,但有很多选择。

    由于您对使用Python进行Web编程是新手,所以最好选择一个完整的框架。Django、Turbogears和Cherrypy是其中的几家。这些框架都将包含制作现代网站所需的所有工具,包括模板语言。

        3
  •  2
  •   Tim McNamara    9 年前

    是的,python确实有一个大致相同的特性:python服务器页面(a.k.a. psp 使用 mod_python . 它使您能够执行以下操作:

    <html>
     <% import time %>
     Hello world, the time is: <%=time.strftime("%Y-%m-%d, %H:%M:%S")%>
    </html>
    

    然而,一般来说,这种做法不被认为是蟒蛇。我先从一个轻量级的 Python web framework . web2py 是一个很好的使用当你开始的时候。 bottle , flask 和; cherrypy 很容易与开箱即用。 Django , TurboGears &其他更复杂,但提供更多功能。

        4
  •  0
  •   Community Nick Dandoulakis    7 年前

    正如蒂姆所说,你可以使用 Python Server Pages ( psp )获取用于 mod_python . 你必须 add psp handler 到Apache配置:

    <Directory /var/www/html>
        AddHandler mod_python .psp
        PythonHandler mod_python.psp
        PythonDebug On
    </Directory>
    

    然后将此另存为 test.psp 享受。-)

    <html>
    <% import time %>
    Hello world, the time is: <%=time.strftime("%Y-%m-%d, %H:%M:%S")%>
    </html>
    

    但不幸的是, 摩天巨龙 retired 你必须使用 mod_wsgi 不幸的是, "there is no port of mod_python PSP for mod_wsgi" .