我将Mysql表定义为:
CREATE TABLE `Events` (
`entity` enum('CLN','TDS','TMS','VTMS') NOT NULL DEFAULT 'CLN',
`type` enum('INFO','STAT','WARN') NOT NULL)
如何在Ruby中找到ENUM类型列定义?
答案 0 :(得分:0)
我认为有一种更简单的方法可以找到ENUM类型的列定义,但这是我的解决方案:
>> ActiveRecord::Migration.select("show create table Events")
.first.values.to_s
.split("\n")
.select{ |line| line.match(/entity/) }
.pop
.match(/enum\(([',\w]*)/)[1]
.gsub("'",'')
.split(',')
- 选择(“show create table Events”) - > 0.0004s
=> [“CLN”,“TDS”,“TMS”,“VTMS”]