You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
educoder/db/migrate/20190805010545_modify_ke_co...

74 lines
1.9 KiB

class ModifyKeContentsForMarkdown < ActiveRecord::Migration[5.2]
include ActionView::Helpers::SanitizeHelper
def change
def ke_transform_to_md content
sanitize(content, tags: %w(img a span), attributes: %w(src href target style))
.gsub(/^(\n)/, "").gsub(/(\n)+/, "<br />").gsub(/$(\n)/, "")
.gsub(/(\n)+/, "<br />").gsub("\t", "&nbsp;&nbsp;&nbsp;&nbsp;")
end
# 课程讨论区
MessageDetail.find_each do |m|
content = ke_transform_to_md m.content
puts("content:#{content}")
m.update_column(:content, content)
end
# 试卷的描述
Exercise.find_each do |e|
exercise_description = ke_transform_to_md e.exercise_description
puts("#exercise_description: #{exercise_description}")
e.update_column(:exercise_description, exercise_description)
end
# 试卷的标题
ExerciseQuestion.find_each do |eq|
question_title = ke_transform_to_md eq.question_title
puts("question_title:#{question_title}")
eq.update_column(:question_title, question_title)
end
# 试卷的答案
ExerciseStandardAnswer.find_each do |esa|
answer_text = ke_transform_to_md esa.answer_text
puts("answer_text: #{answer_text}")
esa.update_column(:answer_text, answer_text)
end
# 试卷题库
ExerciseBankQuestion.find_each do |ebq|
question_title = ke_transform_to_md ebq.question_title
puts("#question_title: #{question_title}")
end
# 问卷的标题
PollQuestion.find_each do |pq|
question_title = ke_transform_to_md pq.question_title
puts("question_title:#{question_title}")
pq.update_column(:question_title, question_title)
end
StudentWork
HomeworkCommon
JournalsForMessage
GraduationTask
GraduationTopic
GraduationWork
GtaskBank
GtopicBank
HomeworkBank
QuestionBank
ExerciseBankStandardAnswer
Memo
end
end