diff --git a/app/controllers/initialization_data_controller.rb b/app/controllers/initialization_data_controller.rb index 078fdc4c1..72af94541 100644 --- a/app/controllers/initialization_data_controller.rb +++ b/app/controllers/initialization_data_controller.rb @@ -85,44 +85,44 @@ class InitializationDataController < ApplicationController logger.info("#########challenge_questions: #{@challenge_questions.count}") logger.info("#########attachments: #{@attachments.count}") ActiveRecord::Base.transaction do - copy_subject_data - copy_stages_data - copy_stage_shixuns_data - copy_shixun_data - copy_shixun_info_data - copy_shixun_mirror_repositories_data - copy_shixun_tag_repertoires_data - copy_shixun_service_configs_data - copy_challenges_data - copy_challenge_answers_data - copy_challenge_tags_data - copy_test_sets_data - copy_challenge_chooses_data - copy_challenge_questions_data - copy_shixun_members_data - copy_subject_members_data + # copy_subject_data + # copy_stages_data + # copy_stage_shixuns_data + # copy_shixun_data + # copy_shixun_info_data + # copy_shixun_mirror_repositories_data + # copy_shixun_tag_repertoires_data + # copy_shixun_service_configs_data + # copy_challenges_data + # copy_challenge_answers_data + # copy_challenge_tags_data + # copy_test_sets_data + # copy_challenge_chooses_data + # copy_challenge_questions_data + # copy_shixun_members_data + # copy_subject_members_data copy_attachment_data end end # 链接库 def connect_to_origin_date database - ActiveRecord::Base.establish_connection( - adapter: "mysql2", - host: "rm-bp13v5020p7828r5r.mysql.rds.aliyuncs.com", - username: "testeducoder", - password: "TEST@123", - database: "#{database}", - encoding: "utf8" - ) # ActiveRecord::Base.establish_connection( # adapter: "mysql2", - # host: "127.0.0.1", - # username: "root", - # password: "123456", + # host: "rm-bp13v5020p7828r5r.mysql.rds.aliyuncs.com", + # username: "testeducoder", + # password: "TEST@123", # database: "#{database}", # encoding: "utf8" # ) + ActiveRecord::Base.establish_connection( + adapter: "mysql2", + host: "127.0.0.1", + username: "root", + password: "123456", + database: "#{database}", + encoding: "utf8" + ) end @@ -386,10 +386,16 @@ class InitializationDataController < ApplicationController # 获取关卡附件 def get_attachment_data task_pass = Challenge.where(id: @challenges).where("task_pass like '%/api/attachments/%'").pluck(:task_pass) + shixun_description = ShixunInfo.where(id: @shixuns).where("description like '%/api/attachments/%'").pluck(:description) att_ids = [] # 附件的格式为(/api/attachments/ + 附件id)的形式,因此下面的正文匹配是为了取出附件的id,方便迁移attachments task_pass.each do |tp| att_ids += tp.scan(/\(\/api\/attachments\/.+\)/).map{|s|s.match(/\d+/)[0]} + att_ids += tp.scan(/\/api\/attachments\/.+\"/).map{|s|s.match(/\d+/)[0]} + end + shixun_description.each do |sd| + att_ids += sd.scan(/\(\/api\/attachments\/.+\)/).map{|s|s.match(/\d+/)[0]} + att_ids += sd.scan(/\/api\/attachments\/.+\"/).map{|s|s.match(/\d+/)[0]} end @attachments = Attachment.where(id: att_ids).to_a end