Plone配置中加载三方模块有如下两种途径:
- 在实例配置文件中,加载三方模块
- 在包空间配置中,加载三方模块
第一种方式,通常是在Plone实例的buildout配置文件中,实例的eggs段,直接列出三方模块的名称,如下:
这种方式加载的一般是公共的被本地多个包引用的三方模块。
第二种方式,是在一个实际的三方包的setup.py文件中指明要加载的三方包,例子如下:
install_requires=[
'setuptools',
'Products.CMFPlone',
'plone.app.dexterity [grok]',
'plone.app.referenceablebehavior',
'plone.app.relationfield',
'plone.namedfile [blobs]',
],
extras_require={
'test': ['plone.app.testing',]
},其中的install_requires列出的都是该包需要引用的三方插件。
这种方式,一般是用在较复杂的包中,且能保障该包的组件依存性相对独立于系统,也就是说,这个包可以任何放到不通的环境中,而不易出现插件依赖性问题。