【发布时间】:2015-09-10 07:59:15
【问题描述】:
我按照教程安装了 trac 的 Hello World 插件,可以在这里找到 http://trac.edgewall.org/wiki/TracDev/PluginDevelopment 和这里 https://trac-hacks.org/wiki/EggCookingTutorialTrac0.11, 在我本地安装的 Agilo for Trac 中。
在这两种情况下,安装 .egg 文件都很好,我也在 trac.ini 中启用了它,但是导航栏中没有显示 hello world 按钮。该插件在管理面板的“插件”下也不可见。但是当我再次尝试安装它时,它说插件已经安装了。
我是否错过了激活插件需要做的事情? (在 trac.ini 中启用)
更新 我尝试将 hello world 插件复制为插件目录中的单个 .py 文件并且它可以工作,因此错误必须与设置脚本或 .egg 文件有关。我会再次检查文件路径,如果我弄明白了就回答这个问题。很高兴我离解决方案又近了一步。
更新
我仍然没有让 .egg 运行。它在我使用单个文件插件时有效,并且在使用 egg-link 时也有效。如果我错过了什么,有人可以看看我的设置脚本吗?
from setuptools import setup
setup(
name='TracTicketPrinter', version='0.1',
packages=['ticketprinter'],
package_data={'ticketprinter': ['htdocs/css/*.css',
'htdocs/templates/*.html']},
entry_points={
'trac.plugins': [
'ticketprinter = ticketprinter',
],
},
)
【问题讨论】:
-
我建议checking the logs。很可能插件没有加载。
-
我的日志文件中没有任何错误。通过文件搜索,我也没有收到任何包含插件名称的消息。插件无法加载的原因是什么?可能是版本冲突?
-
我建议您重新执行这些步骤,直到您到达 First Deployment。您很可能错过了添加
helloworld/__init__.py之类的步骤。我完成了这些步骤,它们对我来说很好。 -
this 是否与 Trac 0.12.2 兼容?那是 Agilo 附带的版本。你测试的版本是什么?
-
我看不出有任何理由它不适用于 0.12.2。该插件非常简单,使用自 0.11 以来的部分 API