Ruby 我必须多次运行此脚本。是否有一个脚本我可以写,将运行一切一次?

Ruby 我必须多次运行此脚本。是否有一个脚本我可以写,将运行一切一次?,ruby,task,Ruby,Task,我必须运行的脚本: Li = LineItem.find ##### li.rental_period = ### li.save! 我有800行项目编号来运行这个。非常感谢你的帮助 line\u item\u number\u string=line\u item\u number.join(“,”) line_item_number_string = line_item_number.join(',') ActiveRecord::Base.connection.execute

我必须运行的脚本:

Li = LineItem.find ##### 
li.rental_period = ### 
li.save!
我有800行项目编号来运行这个。非常感谢你的帮助

line\u item\u number\u string=line\u item\u number.join(“,”)
line_item_number_string = line_item_number.join(',')    
ActiveRecord::Base.connection.execute("UPDATE line_items SET rental_period=<value> WHERE id IN (#{line_item_number_string})")
ActiveRecord::Base.connection.execute(“更新行\u项集租金\u期间=其中id IN(#{行\u项\u编号\u字符串})”)
如果他们都有不同的租期:

line_item_numbers.each do |num|
  li = LineItem.find(num)
  li.rental_period = custom_rental_period
  li.save!
end
如果它们都一样,您只需执行
更新\u all

LineItem.where(id: line_item_numbers).update_all(rental_period: custom_rental_period)
while循环

a = 0
b = 4 #this loop will run 4 times 
while a < b 

 Li = LineItem.find ##### 
 li.rental_period = ### 
 li.save!

 a += 1 #adds one to a
end
然后在代码中调用“go”来执行语法

go

这就是你所说的“go”

所有这些房子的租期都一样吗?租期是您需要初始化的还是仅仅是一个字符串?相同的租期不同的行项目号。是否应该用Rails或ActiveRecord标记?这看起来不像香草红宝石。
go