跳转到主要内容

管理联系人列表

项目描述

==========================================================================
collective.contact.contactlist
==========================================================================

此插件是`collective.contact.*`套件的一部分。要查看套件的概述和演示,请参阅`collective.contact.demo <https://github.com/collective/collective.contact.demo>`__。

用户可以管理联系人列表。
添加一个动作以搜索并将内容添加到现有或新的列表中。

列表可以处理任何联系人类型:组织、个人或所担任的职位。


安装
============

您需要启用成员文件夹创建。

API
===

用于管理联系人列表的辅助API:

def extend_list(contact_list, contacts)
"""向联系人列表添加联系人
@param contact_list: object - 联系人列表对象
@param contacts: objects - 联系人对象列表
@return: objects - 实际添加的联系人列表
"""

def replace_list(contact_list, contacts)
"""替换联系人列表的联系人
@param contact_list: object - 联系人列表对象
@param contacts: objects - 联系人对象列表
@return: objects - 实际添加的联系人列表
"""

def get_contacts(*contact_lists, **kwargs)
"""从一个或多个联系人列表中获取联系人
kwargs可以有一个'operator'选项('and'或'or')
因此我们进行列表的并集或交集
默认为'or'
"""


词汇表
============

- `collective.contact.contactlist.lists`: 用户可以看到的所有列表。
共享给用户的列表用所有者的名字区分。
- `collective.contact.contactlist.alllists`: 用户可以看到的所有列表,没有区分,
- `collective.contact.contactlist.editablelists`:用户可以编辑的所有列表,
- `collective.contact.contactlist.mylists`:用户创建的所有列表,
- `collective.contact.contactlist.addtolist`:用户可以编辑的所有列表 + 列表创建选项,
- `collective.contact.contactlist.vocabularies`:所有先前词汇的词汇表。


与collective.contact.facetednav集成
==============================================

如果您已安装collective.contact.facetednav,
如果您已在您的分面导航中启用了联系人选择,
您可以批量选择联系人并将它们添加到列表中,

您有一个新的小部件“联系人列表”,用于显示您的列表。
它根据您选择的列表的内容过滤结果。

与eeafacetednav > 10兼容

使用ContactListSourceBinder
===========================

当您编写模式时,
您可以在一个或多个列表的联系人上过滤ContactChoice(或ContactList)字段的选项:

birthday_guests = ContactList(
title=u"Birthday guests",
value_type=ContactChoice(
source=ContactListSourceBinder(
contact_lists_query={'Subject': 'Friends'}),
contact_lists_operator='or',
portal_type=("person",),
)
)
)

这就像collective.contact.widget中的ContactSourceBinder一样工作,但它还接收一个
contact_lists_query参数,它是一个目录查询字典。表单小部件查询显示的联系人将根据使用此查询得到的列表的并集或交集(根据contact_lists_operator)进行过滤。
进行过滤。


测试
=====

此插件使用Travis CI进行测试。插件当前状态为

.. 图像:https://secure.travis-ci.org/collective/collective.contact.contactlist.png
:目标: http://travis-ci.org/collective/collective.contact.contactlist

贡献者
============

- Thomas Desvenain, thomas.desvenain@gmail.com
变更日志
=========


2.0 (2019-04-24)
----------------

- 使其与eeafacetednavigation >= 10.0兼容。1.x分支与eeafacetednavigation < 10.0兼容。
[sgeulette]

1.3 (2018-11-13)
----------------

- 当创建者不同时,'collective.contact.contactlist.lists'词汇按标题排序。
+ 对列表顺序进行了一些修复
[thomasdesvenain]


1.2 (2017-01-17)
----------------

- 测试eeawidget。
[thomasdesvenain]

- API:添加了一个源绑定器,允许开发人员
限制ContactChoice字段在联系人列表的内容上。
[thomasdesvenain]

- get_contacts使用'and'运算符时损坏。
[thomasdesvenain]

- 小优化和PEP8。
[thomasdesvenain]

- API:弃用update_list函数并创建extend_list代替,
这更不模糊。
[thomasdesvenain]

- 修复get_contacts API的空列表问题
[ebrehault]


1.1 (2016-09-23)
----------------

- 更健壮的单元测试。
[thomasdesvenain]

- 添加get_lists_for_contact方法以获取包含联系人的所有列表。
[cedricmessiant]

- 修复关系。
[cedricmessiant]

- 在选择小部件的顶部放置“创建新列表”。
[cedricmessiant]

- 修复update_list API的空列表问题
[ebrehault]

- 修复API中的权限问题
[ebrehault]


1.0 (2014-06-16)
----------------

- 首次发布。
[tdesvenain]

项目详细信息


下载文件

下载适合您的平台文件。如果您不确定要选择哪个,请了解更多关于安装包的信息。

源分发

collective.contact.contactlist-2.0.tar.gz (31.2 kB 查看散列)

上传时间:

支持