与膜结合的灵巧性内容和行为。
dexterity.membrane的Python项目详细描述
简介
dexterity.membrane允许将dexterity内容项用作plone站点中的用户和组,并与products.membrane集成。
兼容性
该软件包已经过Plone 4.2的测试和开发+ 事实上,由于我们需要uuid支持,它只能在那个版本(或更高版本)上工作。 我们强烈建议使用Python2.7。 它可能在Python2.6上工作,但我们没有使用该版本进行测试(至少测试有一些代码只在2.7上工作)。
我们依赖products.membrane 2.0.2或更高版本,因为它包含一个修复程序,以确保删除的成员也从membrane工具目录中删除。
用户ID
作为用户id,我们使用为内容项生成的uuid。 这只适用于plone 4.1及更高版本。 参见 user.py 行为中 getuserid 的定义。
如果定义了自己的成员内容类型,则应在其上启用 plone.app.referenceable behavior.referenceable.irereferenceable 行为,因为这提供了uuid支持。 这也意味着可以从原型内容中引用成员。
以登录名发送电子邮件
此包包含具有电子邮件字段的成员内容类型。 行为将此用作登录名。 请参见getusername。 其他的实现是可能的,因此我们不强制您在您的站点中使用电子邮件地址作为登录名。
默认情况下,这是打开的,但您可以在我们的控制面板中将其关闭。 设置保存在plone注册表中。
除此之外,还可以打开plone本身的use_email_as_login属性。 就本软件包而言,唯一的影响是更改了登录表单中的某些文本: 您可以看到 电子邮件地址 作为标签,而不是登录名。 要启用此功能,您可以将其放入propertiestool.xml中(plone 4),也可以将其放入项目的自定义包中:
<?xml version="1.0"?> <object name="portal_properties" meta_type="Plone Properties Tool"> <object name="site_properties" meta_type="Plone Property Sheet"> <property name="use_email_as_login" type="boolean">True</property> </object> </object>
有关更改设置的警告
最好配置一次设置,然后不要再触摸它们。 如果在创建成员后更改设置,则可能需要重新编制索引。 如果只有几个成员,那么编辑和保存所有成员将是最简单的方法。 如果你有几十个或几百个成员,这不是很实际。 未来的版本可能会自动执行此操作。 如果您有兴趣帮忙,a 拉取请求 会很好。
成员内容类型
这个包定义了一个成员内容类型,但这可以看作是一个例子; 请随意创建不同的类型,只使用行为或创建自己的行为适应。
行为
< DL>膜实施
< DL>本地角色
此包定义本地角色提供程序。 它确保登录用户在属于该用户的膜对象上获得本地读卡器、编辑器和创建者角色。
工作流程
我们定义了一个带有挂起/批准状态的简单工作流。 用户只能在"已批准"状态下登录。
加密
从1.1.0b3开始,dexterity.membrane使用 bcrypt 加密新密码。 此更改保持对现有ssha密码的支持。