Ruby 使用Sequel生成迁移
我在用续集 如何生成迁移文件(即使是空的),使其名称类似于Ruby 使用Sequel生成迁移,ruby,migration,sequel,Ruby,Migration,Sequel,我在用续集 如何生成迁移文件(即使是空的),使其名称类似于20160313142249\u create\u table1.rb 也就是说,如何让它生成“20160313142249”部分?Sequel可以做到吗?Sequel没有附带生成迁移文件的方便的Rake任务,但您可以自己编写。这是一个非常简单的例子 # Rakefile namespace :db do desc "Generate migration file" task :generate_migration, [:file
20160313142249\u create\u table1.rb
也就是说,如何让它生成“20160313142249”部分?Sequel可以做到吗?Sequel没有附带生成迁移文件的方便的Rake任务,但您可以自己编写。这是一个非常简单的例子
# Rakefile
namespace :db do
desc "Generate migration file"
task :generate_migration, [:file_name] do |task, args|
filename = args.file_name
time = Time.now.strftime("%Y%m%d%H%M%S%L")
sh "touch migrate/#{time}_#{filename}.rb"
end
end
现在的用法很简单,如rakedb:generate\u migration[file\u name]
使用。如果迁移名称的版本大于2000001,将自动使用该名称。类似bash的shell中的date+%Y%m%d%H%m%S
将为您生成时间戳,或者您可以使用strftime
在Rake任务中编写小型生成器。