grok的字段、小部件和约束

megrok.form的Python项目详细描述


form是一个helper包,它为grok提供了一些有用的字段、小部件和约束。

字段

  • 电子邮件,一个带有默认约束的文本行字段
  • html,使用z3c.widget.tiny的文本字段
  • 文件,来自collective.namedfile
  • 图片,来自collective.namedfile
  • blobfile,来自collective.namedblobfile
  • blobimage,来自collective.namedblobfile

小部件

megrok.form覆盖默认小部件:

  • zope.interface.schema.date(使用zc.datetimewidget.widget.datewidget)
  • zope.interface.schema.datetime(使用zc.datetime widget.widget.datetimewidget)

并为图像和文件添加新的小部件(来自collective.namedfile)。

验证器/约束

megrok.form添加约束:

  • SSN
  • 美国电话号码
  • 国际电话号码
  • 邮政编码
  • 网址
  • 电子邮件

安装

要在grok下使用megrok.form,只需将megrok.form安装为一个鸡蛋 包括ZCML。最好的方法是制作megrok.form 通过将应用程序添加到您的安装中,应用程序的依赖项需要 在setup.cfg中列出。如果使用grokprojet创建应用程序setup.cfg 位于项目根目录中。应该是这样的:

install_requires=['setuptools',
                  'grok',
                  'megrok.form',
                  # Add extra requirements here
                  ],

然后在configure.zcml中包含megrok.form。如果你用grokproject 在src/<;projectname>;/configure.zcml创建应用程序。添加 在grok的include行之后,但在 当前包。应该是这样的:

<include package="grok" />
<include package="megrok.form" />
<grok:grok package="." />

然后再次运行bin/buildout。现在您应该看到buildout这样说:

Getting distribution for 'megrok.form'.
Got megrok.form 0.2.2.

就这些。

使用blob存储

要使用blob存储,您需要更改parts/zopectl/zope.conf中的zodb定义,如下所示:

<zodb>
  <blobstorage>
    <filestorage>
      path /path_to_your_app/parts/data/Data.fs
    </filestorage>
    blob-dir /path_to_your_app/parts/data/blobs
  </blobstorage>
</zodb>

blob dir指定要存储blob的位置。

作者

  • Dirceu Pereira Tiegs(Gmail.com上的Dirceutiegs)

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

推荐PyPI第三方库


热门话题
java为什么程序显示空结果?   java应用程序在测试设备上调试时工作正常,但在发布版apk中没有,它没有获得post。来自firebase的类变量   java Android:从主活动按钮确定在listview中选中哪个复选框   在Spring中添加@OneToOne注释时启动ApplicationContext时发生java错误   用JAVA Android实现矩阵计算的最快方法   SpringJava语义有没有更好的编写方法?   java从hashmap中减去两个值后返回最小差值的键?   Java中的静态初始化顺序:Netty 4.0.7的例外   java如何检查用户输入是否为字符串   循环Java计数单词索引   java如何使用以下代码将视频流传输到Android异步Http服务器?   java如何在jtable的所有行中循环   java如何使用maven将unicode插入mysql   java使用安卓加速远程数据检索   java试图模拟麦克风(javax.sound.sampled)   swing SwingWorker从不归还任何东西?(爪哇)   首次在Android Studio上未加载java LibGDX文件   java如何在多个Mysql服务器上设置限制和偏移?   如何防止从java连接到mongodb时登录控制台?