前提:我的票证有一个自定义字段recipe
,它应该包含一个指向以票证id命名的wiki页面的链接。
例如,Ticket#1应该将recipe
设置为[wiki:TicketRecipe_1]
,Ticket#1234应该有[wiki:TicketRecipe_1234]
等等。你知道吗
由于我希望在ticket creation/modify时自动填充该链接,因此我基于ITicketManipulator
入口点构建了一个非常简单的插件。你知道吗
from trac.core import Component, implements
from trac.ticket.api import ITicketManipulator
class WikiLinkPopulator(Component):
implements(ITicketManipulator)
def prepare_ticket(self, req, ticket, fields, actions):
pass
def validate_ticket(self, req, ticket):
wikilink = "[wiki:TicketRecipe_%s]" % (ticket.id)
if ticket['recipe_link'] != wikilink:
ticket['recipe_link'] = wikilink
return []
当我修改一个现有的票证时,这是有效的,但是当我创建一个新的票证时,结果是[wiki:TicketRecipe_None]
。
可能是因为在呼叫入口点时,车票id/号码仍然未知?你知道吗
是否有办法在票证创建时也设置值?你知道吗
您可以实现
ITicketChangeListener
。以下插件应与Trac 1.0+配合使用:相关问题 更多 >
编程相关推荐