** Beachten Sie, dass ich die Template-Engine in Python recherchiert habe. ** ** **
Also habe ich Jinja2 ausprobiert. Der Ursprung des Namens ist Vorlage ⇒ Tempel ⇒ Schrein. ‥Das war's.
Die Umgebung ist Sakura VPS (CentOS)
yum install python-pip (nur wenn du noch kein pip hast)
pip install jinja2
Konfigurieren Sie Apache so, dass Python als CGI funktioniert.
vi /etc/httpd/conf/httpd.conf
Ändern Sie 2 in httpd.conf geschriebene Stellen mit dem vi-Editor usw.
httpd.conf
1)
<Directory "/var/www/html">
Options Indexes FollowSymLinks
↓ ExecCGI hinzugefügt
Options Indexes FollowSymLinks ExecCGI
</Directory>
2)
#AddHandler cgi-script .cgi
↓ Kommentar und.py hinzugefügt
AddHandler cgi-script .cgi .py
Starten Sie Apache nach dem Speichern der Einstellungen neu.
service httpd restart
html:hello.tpl.html(UTF-8)
<html>
<body>
Herzlich willkommen,{{ shop }}ist.
<hr>
<ul>
{% for food in foods %}
<li>{{ loop.index }}: {{ food.name }} - {{ food.price }}Kreis</li>
{% endfor %}
</ul>
</body>
</html>
Alle Python-Quelldateien sind in UTF-8 geschrieben, und die Berechtigung nach dem Hochladen beträgt 755 (Ausführungsberechtigung erteilen). Außerdem ist die folgende Ausgabe erforderlich, bevor HTML ausgegeben wird. (Wenn Sie es vergessen, tritt sofort ein Fehler auf.)
print "Content-Type: text/html\n";
hello.py(UTF-8)
#!/usr/bin/python
# -*- coding: utf-8 -*-
from jinja2 import Environment, FileSystemLoader
env = Environment(loader=FileSystemLoader('./', encoding='utf8'))
tpl = env.get_template('hello.tpl.html')
foods = []
foods.append({'name':u'Ramen', 'price':400})
foods.append({'name':u'Gegrillter Reis', 'price':500})
foods.append({'name':u'Tianjin Reis', 'price':600})
html = tpl.render({'shop':u'Gokuken', 'foods':foods})
print 'Content-Type: text/html; charset=utf-8\n'
print html.encode('utf-8')
Greifen Sie danach über den Browser auf hello.py zu und überprüfen Sie.
(・ O ・ ゞ Ijo.
jinja2 | it-note 1.0 Dokument http://maman-it-information.readthedocs.org/ja/latest/src/python/jinja2/jinja2.html
Offizielle Python-Dokumentation http://jinja.pocoo.org/docs/dev/
Recommended Posts