Re: [Sqlalchemy-tickets] [sqlalchemy] #2729: metadata.create_all do not create Enum in postgre ARRA
Brought to you by:
zzzeek
|
From: sqlalchemy <mi...@zz...> - 2013-05-19 14:53:41
|
#2729: metadata.create_all do not create Enum in postgre ARRAY
--------------------------------+-------------------------------------
Reporter: sowingsadness | Owner: zzzeek
Type: defect | Status: new
Priority: medium | Milestone: 0.8.xx
Component: postgres | Severity: minor - half an hour
Resolution: | Keywords: create_all, enum, ARRAY
Progress State: in queue |
--------------------------------+-------------------------------------
Changes (by zzzeek):
* severity: no triage selected yet => minor - half an hour
* status_field: awaiting triage => in queue
Comment:
good catch. Here is a better workaround for now:
{{{
#!python
from sqlalchemy import event
Base = declarative_base()
enum = Enum('manager', 'place_admin', 'carwash_admin',
'parking_admin', 'service_admin',
'tire_admin',
'mechanic', 'carwasher', 'tire_mechanic',
name="work_place_roles")
class WorkPlacement(Base):
__tablename__ = 'work_placement'
id = Column(Integer, primary_key=True)
roles = Column(ARRAY(enum))
@event.listens_for(Base.metadata, "before_create")
def _create_enum(metadata, conn, **kw):
enum.create(conn, checkfirst=True)
}}}
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2729#comment:1>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|