为模板化视图提供与其关联的架构设置。

wildcard.templatedviews的Python项目详细描述


简介

这个包允许您定义一组视图、模式和模板 可以用作plone站点上视图的模板。

所以基本上,它只允许一个简单的机制提供额外的、可重用的 附加了设置的模板你填写的每个模板 在的设置中,然后可以从另一个模板视图中引用 在别的地方。

基本示例

定义您的设置:

>>> class ICustomSettings(Interface):
>>>     setting_one = schema.TextLine(title=u'Setting One')
>>>     setting_two = schema.Text(title=u'Setting Two', default=u'')

定义模板视图实用程序:

>>> from wildcard.templatedviews.browser import BaseViewUtility
>>> from plone.app.form.widgets.wysiwygwidget import WYSIWYGWidget
>>> class CustomTemplateViewUtility(BaseViewUtility):
>>>     settings = ICustomSettings
>>>     _for = None
>>>     title = u'Custom Template'
>>>     description = u'a custom template settings.'
>>>     custom_widgets = (
>>>         ('setting_one', WYSIWYGWidget),
>>>     )

用zcml连接起来:

>>> <browser:page
>>>   for="*"
>>>   name="custom-template"
>>>   class="wildcard.templatedviews.browser.BaseView"
>>>   template="templates/custom-template.pt"
>>>   permission="zope2.View"
>>> />
>>> <utility factory=".CustomTemplateViewUtility" name="custom-template" />
>>> <adapter
>>>   for="*"
>>>   provides=".ICustomSettings"
>>>   factory="wildcard.templatedviews.settings.TemplateViewSettings"
>>> />

然后在您的自定义模板.pt中,您可以使用如下设置:

>>> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
>>>       xmlns:tal="http://xml.zope.org/namespaces/tal"
>>>       xmlns:metal="http://xml.zope.org/namespaces/metal"
>>>       xmlns:i18n="http://xml.zope.org/namespaces/i18n"
>>>       lang="en"
>>>       metal:use-macro="here/main_template/macros/master"
>>>       i18n:domain="plone">
>>> <body>
>>>
>>> <metal:main fill-slot="main" tal:define="settings python: view.settings">
>>>   <tal:main-macro metal:define-macro="main">
>>>     <h1 tal:content="python: settings.setting_one" />
>>>     <p tal:content="structure python: settings.setting_two" />
>>>   </tal:main-macro>
>>> </metal:main>
>>> </body>
>>> </html>

您还需要将“模板视图”视图添加到可用的 有关要将其用于的内容类型的视图。

现在要在安装后使用它,请从 显示下拉菜单,然后使用“选择模板”和“模板设置” 自定义模板视图。

有关如何使用它的更多示例,请查看源代码。

变更日志

1.0b4(2012-08-27)

  • 修正变换的使用

1.0b3(2012-08-09)

  • plone 4.1兼容
  • 转换uid

1.0b2(2011-10-25)

  • 如果遍历对象不起作用,请尝试 在重定向存储中查找它

1.0b1(2011-04-13)

  • 提供设置和选定模板的保存事件
  • 允许字段排序

1.0a2(2010-04-10)

  • 当找不到实用程序时修复问题
  • 添加更多实用方法以查看

1.0a1(2011-03-20)

  • 初始版本

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

推荐PyPI第三方库


热门话题
java无法使用JSF访问托管bean方法   java是制作具有多值类型的HashMap的正确方法   javafx中TicTacToe的java更新UI   windows Java文件。getCanonicalFile()无法处理冒号“:”   java在一个布局屏幕中创建多个(26)按钮   java Android Studio:Gradle构建完成,有251个错误   我们如何在Java上为callfireapiclient编写单元/集成测试?   java无法将1715UTC转换为本地/gmt类型   具有已定义的数字序列的JAVA循环   Java程序正在netbeans中编译,但未在CMD中编译,包不存在   java Android构造函数和onCreate()之间有什么区别?   java配置弹性搜索结果评分   java LibGDX纹理是否可绘制?   java如何在Android中设置应用程序默认打开pdf   java是否有一种创造性的方法将多个参数传递给contentEquals()方法?   java在Android上存储Ed25519私钥