gpt4 book ai didi

ruby-on-rails - 如何生成带有枚举类型字段的模型?

转载 作者:行者123 更新时间:2023-12-03 10:21:55 25 4
gpt4 key购买 nike

我想使用生成器脚本在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 ,它使用integer -type列模拟枚举。只要愿意将列类型更改为数据库中的整数,就可以使用它们。

要使用这些枚举,请将integer放在您的generate命令中:

bin/rails generate Work nickname:string sex:integer

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

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

有关更多详细信息,请参见 Enum ’s documentation

关于ruby-on-rails - 如何生成带有枚举类型字段的模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1137796/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com