使用数据库迁移-ruby插入一行



我是ruby on rails的新手。我需要使用数据库迁移将一行插入到现有表中,该表已经有200多行数据,我还需要再插入一行。

我已经创建了一个迁移文件,如下所示,

class AddNewGrowingMethodToEnumValues < ActiveRecord::Migration
  execute "INSERT INTO enum_values (enum_type, name, gdsn, created_at, updated_at) VALUES ('growing', 'Organic', '', now(), now())"
end

它正确/好吗?

有人能帮助我以正确/标准的方式进行移植以插入单行吗。

您可以写如下:

class AddNewGrowingMethodToEnumValues < ActiveRecord::Migration
  enum_value = EnumValue.create(enum_type: 'growing', name: 'Organic', gdsn: '')
end

不需要写入created_atupdated_at。当我们运行此migration时,rails将为它们填充值。

您不应该使用迁移将数据插入数据库。迁移用于创建数据库结构。

如果必须插入准备好的数据,则应使用db/目录中的seeds.rb文件。

文件中有一个简短的解释,描述了你应该如何使用它

快乐编码:)

最新更新