运行一次性任务以在Ruby中将值输入数据库

我现在已经在数据库中向我的表添加了一个新列。 我想在这个新列的某些行中添加一些值。 我知道逻辑和所有。 但实际上我不知道添加它的方法,或者在ruby on rails上写一次执行此任务的任务。 谁能帮我。 我只是需要一些想法。

您可以为此创建一个rake任务,并运行一次。

创建文件lib/tasks/my_namespace.rake

 namespace :my_namespace do desc "My Task description" task :my_task => :environment do # Code to make db change goes here end end 

您可以从项目根文件夹中的命令行调用任务

rake my_namespace:my_task RAILS_ENV=production

 data = Model.where(#your_condition) 

如果所有人的价值相同

 data.update_all(:new_column => "new value") 

如果所有人的价值不同

 data.each do |d| d.update_attributes(:new_column => "some value") end