mirror of
https://github.com/TracksApp/tracks.git
synced 2025-12-16 15:20:13 +01:00
24 lines
693 B
Ruby
24 lines
693 B
Ruby
class ConvertProjectToStateMachine < ActiveRecord::Migration[5.2]
|
|
|
|
class Project < ActiveRecord::Base; end
|
|
|
|
def self.up
|
|
add_column :projects, :state, :string, :limit => 20, :default => "active", :null => false
|
|
@projects = Project.all
|
|
@projects.each do |project|
|
|
project.state = project.done? ? 'completed' : 'active'
|
|
project.save
|
|
end
|
|
remove_column :projects, :done
|
|
end
|
|
|
|
def self.down
|
|
add_column :projects, :done, :integer, :limit => 4, :default => 0, :null => false
|
|
@projects = Project.all
|
|
@projects.each do |project|
|
|
project.done = project.state == 'completed'
|
|
project.save
|
|
end
|
|
remove_column :projects, :state
|
|
end
|
|
end
|