加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 如何使用枚举类型字段生成模型?

发布时间:2020-12-16 20:34:08 所属栏目:百科 来源:网络整理
导读:我想使用生成器脚本在Rails中生成一个模型和相应的数据库表.数据库表有一个带有“枚举”类型的字段.如何生成它? SQL中的表的定义: create table works { id int unsigned not null auto_increment,nickname varchar(20) not null,sex enum('m','f') not nu
我想使用生成器脚本在Rails中生成一个模型和相应的数据库表.数据库表有一个带有“枚举”类型的字段.如何生成它?

SQL中的表的定义:

create table works {
  id int unsigned not null auto_increment,nickname varchar(20) not null,sex enum('m','f') not null
};

Rails生成器命令:

script/generator work nickname:string sex:(what should I write here?)

解决方法

Rails 4.1添加了 ActiveRecord::Enum,它使用整型类型列模拟枚举.只要您愿意将列类型更改为数据库中的整数,就可以使用它们.

要使用这些枚举,请在您的生成命令中放入整数:

bin/rails generate Work nickname:string sex:integer

然后在生成的模型文件中添加对枚举的调用:

class Work < ActiveRecord::Base
  enum sex: [ :male,:female ]
end

详见Enum’s documentation.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读