TRAC-NewTicketLikeThisPlugin是Trac的插件,增加了一個“克隆”按鈕,現有的門票,它可以讓你創建一個新的機票,其領域從原來的票中獲得,如果你有相應的權限。
它是基於tracopt.ticket.clone.ticketclonebutton擴展附帶Trac的核心。不同於延伸,NewTicketLikeThisPlugin限定並消耗可插拔接口,用於實現自定義策略,以確定在其中一個新的票證從原始來源的方法。要根據你的團隊的需求和工作流程提供了這樣靈活的,定制的業務邏輯。此外,NewTicketLikeThisPlugin允許您配置克隆票所需的權限,而核心ticketclonebutton硬編碼的TICKET_ADMIN許可。
兩項政策都默認提供,在newticketlikethis.policies模塊:
- SimpleTicketCloner模仿芯tracopt.ticket.clone.ticketclonebutton延伸的行為:從原始票證的所有字段被克隆,並在“摘要”和“描述”字段被修改,以表示它們是從克隆的票證。
- ExcludedFieldsTicketCloner克隆從沒有修改原始機票的所有領域。它也可以忽略某些字段完全的基礎上,配置設置,這將迫使新票證將與系統的默認值(或沒有值)被排除的字段生成。
更複雜的政策可能實現自定義邏輯推導基於現有的票證的字段的值新票值或使用基於票證的種類備用克隆策略。
配置
要使用該插件,安裝到您的Trac的環境並啟用其組件trac.ini:
[成分]
newticketlikethis。* =啟用
默認情況下,這將增加“複製”按鈕,車票視圖,將使用SimpleTicketCloner組件克隆你的票。該TICKET_ADMIN許可將被要求用於克隆的門票。
選擇一個政策
使用不同的票克隆的政策,確保使任何必要的組件,然後再設置trac.ini的newticketlikethis.ticket_cloner選項來引用該組件的名稱,像這樣:
[newticketlikethis]
ticket_cloner = ExcludedFieldsTicketCloner
配置權限
默認情況下,“克隆”按鈕,只有當用戶有TICKET_ADMIN許可出現。您可以使用newticketlikethis.ticket_clone_permission選項更改所需的權限:
[newticketlikethis]
ticket_clone_permission = TICKET_CREATE
ExcludedFieldsTicketCloner
如果啟用,ExcludedFieldsTicketCloner將尋找一個額外的配置選項newticketlikethis.excluded_fields確定要排除的域。這應該是一個逗號分隔票字段列表。默認情況下,沒有字段被排除在外。例如,你可以使用一個trac.ini配置,如:
[newticketlikethis]
ticket_cloner = ExcludedFieldsTicketCloner
excluded_fields =描述,摘要,記者
定制
這是很容易實現自己的自定義策略為好。看看newticketlikethis.policies靈感的代碼。
如果要實現自定義策略,你想與大家分享,請隨時提交它作為一個補丁,讓NewTicketLikeThisPlugin可以重複使用的克隆政策的強烈庫出貨。
要求:
- 在Python中
- 在Trac系統
評論沒有發現