用于定义文件存储的zc构建方法

zc.recipe.filestorage的Python项目详细描述


设置文件存储的方法

此配方可用于定义文件存储。它创建一个zconfig 其他配方可以使用的文件存储数据库规范 生成zconfig配置文件。

此配方采用可选路径选项。如果没有给出,它会创建和 使用与 部分。

配方记录一个zconfig选项供其他配方使用。

我们将展示几个示例,使用字典作为模拟构建 对象:

>>> import zc.recipe.filestorage
>>> buildout = dict(
...   buildout = {
...      'directory': '/buildout',
...      },
...   db = {
...      'path': 'foo/Main.fs',
...      },
...   )
>>> recipe = zc.recipe.filestorage.Recipe(
...                   buildout, 'db', buildout['db'])
>>> print(buildout['db']['path'])
/buildout/foo/Main.fs
>>> from six import print_
>>> print_(buildout['db']['zconfig'], end='')
<zodb>
  <filestorage>
    path /buildout/foo/Main.fs
  </filestorage>
</zodb>
>>> recipe.install()
()
>>> import tempfile
>>> d = tempfile.mkdtemp()
>>> buildout = dict(
...   buildout = {
...      'parts-directory': d,
...      },
...   db = {},
...   )
>>> recipe = zc.recipe.filestorage.Recipe(
...                   buildout, 'db', buildout['db'])
>>> print(buildout['db']['path'])
/tmp/tmpQo0DTB/db/Data.fs
>>> print_(buildout['db']['zconfig'], end='')
<zodb>
  <filestorage>
    path /tmp/tmpQo0DTB/db/Data.fs
  </filestorage>
</zodb>
>>> recipe.install()
()
>>> import os
>>> os.listdir(d)
['db']

update方法做的不多,因为数据库部分的目录 它已经存在,但它存在,所以它不会抱怨也不会。 再次意外运行install():

>>> recipe.update()

如果存储的目录被删除,是否通过更新方法重新添加:

>>> os.rmdir(os.path.join(d, 'db'))
>>> os.listdir(d)
[]
>>> recipe.update()
>>> os.listdir(d)
['db']

当包含数据库的目录是 为了从头启动数据库而删除。

更改

1.1.2(2014-02-21)

  • 修正:打包错误导致'pip install zc.recipe.filestorage'失败 缺少README.txt时出错

1.1.1(2014-02-16)

  • 修正:包装错误导致测试失败 没有使用buildout运行setup.py的测试运行程序。

1.1.0(2014-02-14)

  • python 3兼容性
  • 使用python的doctest模块而不是弃用 zope.testing.doctest
  • 已从blobstorage节中删除“shared blob dir”

1.0.0(2007-11-03)

  • 初次发布

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

推荐PyPI第三方库


热门话题
java如何运行一个在播放歌曲的同时创建和更改UI的方法?   eclipse错误:无法找到或加载主类Java,因为类文件anme和类名不同?   两个数字相加得到一个值的java算法   java我可以更改字符串吗?   java Hibernate 5.2:以编程方式从其他jar加载映射   java如何访问随机跳转到固定位置的二进制文件   java是解析器实现中文档的功能   Javasocket的两端齐平   java查找将两个非常大的整数之和除以相等块的步骤   java如何在Restlet中调用带超时的异步HTTP客户端   java如何从servlet请求将hashmap传递给jsp。塞塔提布特   java Spring MVC HTTP状态500–内部服务器错误,Servlet。servlet[dispatcher]的init()引发异常   java即使没有alpha通道,如何将PNGFiles加载为ARGB_8888?   java将subscribe的返回类型映射到其他类型   javascript如何在安卓 WebView中启用longpress操作下载图像?   java将字符串作为hashmap值的一部分添加到StringList中   JavaSpringAOP:代表类型声明其他方法或字段   Java将二进制序列转换为字符   java使用ApachePOI获取最后一行值   为什么要在FPS(每秒帧数)跟踪器中添加时间?(爪哇)