擅长:python、mysql、java
<p>上面的方法看起来很奇怪。您的工具使用PropertyManager、UniqueObject和SimpleItem作为基类—这意味着您的工具是一个持久对象。所以你想通过使用</p>
<pre><code>my_tool = getToolByName(self, tool_name)
result = my_tool.my_method()
</code></pre>
<p>或者将您的功能实现为Zope实用程序,并使用getUtility()进行查找。你知道吗</p>
<p>然而,写一个持久的工具,然后试图只是重要的工具没有多大意义。如果您的代码不处理持久性对象,或者只是一个实用方法,而没有考虑核心Zope或Plone功能:将其设置为“普通”类,而不包含上面的基类,然后导入它们。你知道吗</p>