虽然此处已经将创建枚举的代码写好了:
但是实际上,此处从form表单拿到的是字符串
所以要去搞清楚:如何把字符串,转换为enum枚举的值
然后传入Table的column中。
python string to enum
8.13. enum — Support for enumerations — Python 3.4.5 documentation
Python Enum class (with tostring fromstring) – Stack Overflow
Python enum – getting value of enum on string conversion – Stack Overflow
How to convert int to Enum in python? – Stack Overflow
->直接调用:
EnumClass(someValue)
好像就可以了。
最后是:
notification_time = requestForm.get(“notification_time”, NotificationTime.NotNotify) notificationTime = NotificationTime(notification_time) app.logger.debug(“notificationTime=%s”, notificationTime) |
即可正常获得枚举值:
DEBUG in views [/root/html/SIPEvents/sipevents/views.py:482]: notificationTime=NotificationTime.OneHourBefore |
[总结]
字符串转enum的话,直接用:
EnumClassName(someStringValue) |
即可得到对应的枚举类型的值了。