Django中用于更智能地输出HTML的模板标记

django-html的Python项目详细描述


====
django_html
====


这个包代表了改进django
输出表单小部件方式的实验方法。目前,使用“django.forms”创建的小部件被
输出为xhtml(带有自动关闭的`/>;`标记),即使站点的其余部分
使用html。这个包通过引入三个新的模板
标记来解决这个问题:`{%doctype%}`、`{%field%}`和`{%slash%}`。

要安装,请将'django_html'目录放在python路径的某个位置,
然后将“django_html”添加到“settings.py”文件中的“installed_apps”中。


有关django开发人员的更多背景信息,请参见以下django开发人员线程:
http://groups.google.com/group/django developers/browse_thread/thread/5f3694b8a19fb9a1/

{{%doctype%}
=====输出相关的doctype,并将您选择的doctype存储在“context.\doctype”中。示例用法::

{%load html%}{%doctype“html4”%}


这将输出::

<;!doctype html public“-//w3c//dtd html 4.01//en”
“http://www.w3.org/tr/html4/strict.dtd”>;

它还会将上下文的doctype设置为“html4”。其他模板标记可以
然后在决定它们应该如何呈现时考虑这一点。

` django.forms`考虑当前
活动doctype的小部件。默认情况下,django输出xhtml表单小部件,但是如果您的站点使用html 4,这可能不合适。下面是如何输出带有stock django的


<;label for=“id_name”>;name:<;/label>;{{form.name}

这将始终输出为xhtml。下面是如何使用新的{%field%}
标记:

<;label for=“id_name”>;名称:<;/label>;{%field form.name%}

现在,当前的doctype(使用{%doctype%}标记设置)将用于
决定小部件是否应使用xhtml自结束标记。


field标记还允许您从模板中为表单字段指定额外的html属性
(对于添加额外类等有用不必修改python代码中的表单定义::

<;label for=“id_name”>;name:<;/label>;{%field form.name class="myclass" %}

使用html doctype,这将呈现为::

<;input type=“text”name=“name” id="id_name" class="myclass">

如果doctype是xhtml,则会得到::

<;input type=“text”name=“name” id="id_name" class="myclass" />

{%slash%}
==


包含此标记是为了完整性。带有自己模板(extending base.html)的可重用应用程序的作者可能希望确保他们的
应用程序使用当前doctype的正确标记。实际上,这意味着
为少量html元素输出一个自动关闭标记。
`{%slash%}`标记只为xhtml doctype输出字符串“/”,而对于html doctype则为空。以下是一些示例:

<;br{%slash%}>;

<;img src=“/site/logo.png”alt=“我的网站”{%slash%}>;

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
javafx在java中显示图像或形状的二维网格   java如何部署WAR文件而不是根文件。AWS Elastic Beanstalk中配置了Amazon AMI的war?   java如何在Eclipse中设置runnable jar的目标版本   Java 8流/收集器按地图分组   java ParseServer:不保存用户信息?   MySQL:java。sql。BatchUpdateException:键“PRIMARY”的重复条目“242243”   java Jersey测试框架为grizzly中的所有未知路径定义默认错误响应   java使用所有请求参数将请求从一个jsp转发到另一个jsp?   java为什么在JavaFX8中选择CheckboxTableCell时SelectedStateCallback不起作用?   期待EOF的java发现“异常”   java如何使用SeleniumWebDriver捕获弹出窗口的屏幕?   java无法从安卓手机向我的数据库发送截击post请求   java Selenium单击切换元素   java使用Spring api向服务器发送数据   继承和创建新类之间的java差异   数组io。内蒂。ByteBuf writeBytes(java.nio.ByteBuffer src)顶点化   java相对于多次选择和一次更新,删除和插入的代价有多高?   java单向一对多,父级具有复合密钥   Java Spring批处理多线程作业失败,原因是“致命:由于idleintransaction超时而终止连接”