[Trac-tickets] [The Trac Project] #2067: Cannot change ticket type
via WebAdmin plugin
The Trac Project
noreply at edgewall.com
Wed Sep 14 21:58:05 CDT 2005
#2067: Cannot change ticket type via WebAdmin plugin
-----------------------------------------------+----------------------------
Reporter: Shunichi Goto <gotoh at taiyo.co.jp> | Owner: jonas
Type: defect | Status: new
Priority: normal | Milestone:
Component: ticket system | Version: devel
Severity: normal | Keywords: |
-----------------------------------------------+----------------------------
I found that I cannot rename ticket type value via `WebAdmin` plugin.
The operation causes exception.
This problem comes from difference between enum name in enum table
and column name in ticket table.
So I modified `trac.ticket.AbstractEnum` and trac.ticket.Type` like this:
{{{
#!patch
Index: model.py
===================================================================
--- model.py (revision 2239)
+++ model.py (working copy)
@@ -272,8 +272,11 @@
class AbstractEnum(object):
type = None
+ ticket_column = None
def __init__(self, env, name=None, db=None):
+ if not self.ticket_column:
+ self.ticket_column = self.type
self.env = env
if name:
if not db:
@@ -348,7 +351,8 @@
if self.name != self._old_name:
# Update tickets
cursor.execute("UPDATE ticket SET %s=%%s WHERE %s=%%s" %
- (self.type, self.type), (self.name,
self._old_name))
+ (self.ticket_column, self.ticket_column),
+ (self.name, self._old_name))
self._old_name = self.name
self._old_value = self.value
@@ -371,6 +375,7 @@
class Type(AbstractEnum):
type = 'ticket_type'
+ ticket_column = 'type'
class Status(AbstractEnum):
}}}
--
Ticket URL: <http://projects.edgewall.com/trac/ticket/2067>
The Trac Project <http://trac.edgewall.com/>
More information about the Trac-Tickets
mailing list