2012-02-29 73 views
0

我正在嘗試寫我自己的Tracplugin以通知外部系統對符合特定標準的故障單的更改。從我迄今爲止的研究中,我發現實施ITicketChangeListener interface是一條路。Trac - 如何訪問ITicketChangeListener中的自定義票據字段?

方法定義都非常簡單,但對我來說不直截了當的是Ticket object並訪問其自定義字段。我瞭解到,您可以訪問默認票證領域的簡單,如:

# t is a Ticket object 
theStatus = t['status'] 

我已經發現了幾個來源說,這是行不通的:

myCustomField = t['my_custom_field'] 

然而,他們沒有告訴我什麼工作。

此外,我需要知道ticket_changed()方法的old_values參數是否具有我的自定義字段,或者是否必須在此處做不同的操作。

我是相當新的Python和非常新的Trac。任何幫助指出我在正確的方向是值得讚賞的。

回答

3

有關錯誤消息來源custom ticket fields。價值分類的方法應該可行。 * old_values *包含所有字段值,包括自定義字段。而已。

您可能需要查看TracAnnouncer源代碼,以瞭解某些更改偵聽器編碼示例。

+0

你是對的。這確實奏效。但是,我仍然遇到了有時在'old_values'中不存在的密鑰的問題。所以我必須首先檢查:如果old_values中的「my_custom_field」: – 2012-03-01 03:08:53

+0

對,如果票據字段的值已更改,則該密鑰將只存在於「old_values」中。 – RjOllos 2015-11-24 10:49:28

相關問題