46 lines
2.3 KiB
Ruby
46 lines
2.3 KiB
Ruby
class HomeworkBankMigration < ActiveRecord::Migration
|
|
def up
|
|
# add_column :homework_commons, :homework_bank_id, :integer
|
|
# add_column :homework_commons, :is_update, :boolean, :default => false
|
|
#
|
|
# count =Course.all.count / 30 + 2
|
|
# transaction do
|
|
# for i in 1 ... count do i
|
|
# Course.page(i).per(30).each do |course|
|
|
# if course.is_delete == 0
|
|
# course.homework_commons.each do |homework|
|
|
# unless homework.user.homework_banks.select("name").to_s.include?(homework.name)
|
|
# homework_bank = HomeworkBank.create(:user_id => homework.user_id, :name => homework.name, :description => homework.description, :homework_type => homework.homework_type,
|
|
# :quotes => 1, :is_public => course.is_public, :applicable_syllabus => course.syllabus.title, :homework_common_id => homework.id, :created_at => homework.created_at)
|
|
# if homework.homework_type == 2 && homework.homework_detail_programing
|
|
# homework_bank.update_attributes(:language => homework.homework_detail_programing.language, :standard_code => homework.homework_detail_programing.standard_code)
|
|
# homework.homework_tests.each do |test|
|
|
# homework_bank.homework_bank_tests << HomeworkBankTest.create(
|
|
# input: test.input,
|
|
# output: test.output,
|
|
# test_type: true
|
|
# )
|
|
# end
|
|
# homework.homework_samples.each do |test|
|
|
# homework_bank.homework_bank_tests << HomeworkBankTest.create(
|
|
# input: test.input,
|
|
# output: test.output,
|
|
# test_type: false
|
|
# )
|
|
# end
|
|
# elsif homework.homework_type == 3 && homework.homework_detail_group
|
|
# homework_bank.update_attributes(:min_num => homework.homework_detail_group.min_num, :max_num => homework.homework_detail_group.max_num, :base_on_project => homework.homework_detail_group.base_on_project)
|
|
# end
|
|
# homework.update_column('homework_bank_id', homework_bank.id)
|
|
# end
|
|
# end
|
|
# end
|
|
# end
|
|
# end
|
|
# end
|
|
end
|
|
|
|
def down
|
|
end
|
|
end
|