【问题标题】:Changing existing pages in Agilo/Trac via plugin通过插件更改 Agilo/Trac 中的现有页面
【发布时间】:2015-09-09 12:56:28
【问题描述】:

是否可以通过插件对 Trac 中的现有页面进行更改? (我说的不是wiki,而是票务系统)。

我正在尝试制作一个使用 View Tickets -> Custom Query 视图的插件,并从生成的票证表中获取票证。目标是使用这些票证通过预定义的 python 脚本修改它们,然后选择性地打印它们。

这是否可以通过 trac api 实现,还是必须创建一个全新的页面并从头开始编写整个查询功能才能从数据库中获取票证?

我觉得 Trac 没有很清楚地记录这一点,所以我希望有一些人在 trac 的插件开发和/或 trac 的 agilo 方面有经验。

【问题讨论】:

    标签: python trac


    【解决方案1】:

    首先想到的是ITicketManipulator在批量修改事件中是not called。您也许可以使用IRequestFilter 实施解决方案。我需要更多关于您计划如何修改票证的信息,以便提供更好的建议。

    【讨论】:

    • 我要做的是拿到票,从中筛选出想要的信息(例如我只需要摘要和ID,而不需要描述),然后打印出来。
    • 我已经制作了一个脚本,该脚本可以生成 HTML 以显示打印页面的外观,并将票安排在表格上,到目前为止,我可以使用 .csv 文件导入列表剧本的门票。但现在我想将脚本制作成插件并直接从 Trac 而不是从 .csv-export 获取票证。这就是为什么如果我可以使用现有的“自定义查询”来获取票证列表并将该票证列表与我的脚本一起使用会很棒的原因。
    • 您或许可以在插件中实现IContentConverter,以便在以其他格式下载部分的页面底部添加另一个链接。请参阅query.py 中的现有实现。
    • 是否可以在不更改 query.py 的情况下添加 以其他格式下载 链接,以便我在安装插件时获得链接,但可以在不更改的情况下将其卸载正中核心?或者我可以只将按钮添加到具有自己的页面和自己的导航栏项目的全新模块,例如 Wiki、时间轴和查看工单?
    • 是的,扩展点的目的是允许您在不更改 Trac 代码的情况下添加指向任何页面的链接。查看IContentConverter 的文档。
    猜你喜欢
    • 1970-01-01
    • 2019-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-29
    相关资源
    最近更新 更多