diff --git a/app/controllers/question_banks_controller.rb b/app/controllers/question_banks_controller.rb index f814822e8..299224527 100644 --- a/app/controllers/question_banks_controller.rb +++ b/app/controllers/question_banks_controller.rb @@ -240,8 +240,9 @@ class QuestionBanksController < ApplicationController ActiveRecord::Base.transaction do new_task = GraduationTask.new new_task.attributes = task.attributes.dup.except("id", "course_id", "user_id", "quotes", "graduation_task_id", - "course_list_id") + "course_list_id", "gtask_bank_id") new_task.course_id = course.id + new_task.gtask_bank_id = task.id new_task.user_id = current_user.id if new_task.save! new_task.create_work_list @@ -264,8 +265,10 @@ class QuestionBanksController < ApplicationController def quote_gtopic_bank topic, course ActiveRecord::Base.transaction do new_topic = GraduationTopic.new - new_topic.attributes = topic.attributes.dup.except("id", "course_id", "user_id", "graduation_topic_id", "course_list_id") + new_topic.attributes = topic.attributes.dup.except("id", "course_id", "user_id", "graduation_topic_id", + "course_list_id", "gtopic_bank_id") new_topic.course_id = course.id + new_topic.gtopic_bank_id = topic.id new_topic.user_id = current_user.id new_topic.save diff --git a/app/models/graduation_task.rb b/app/models/graduation_task.rb index 308c51be4..8d89da693 100644 --- a/app/models/graduation_task.rb +++ b/app/models/graduation_task.rb @@ -19,6 +19,8 @@ class GraduationTask < ApplicationRecord has_many :graduation_works, -> { where("is_delete != 1") } has_many :graduation_work_scores + belongs_to :gtask_bank, optional: true + validates :name, length: { maximum: 60 } validates :description, length: { maximum: 5000 } diff --git a/app/models/graduation_topic.rb b/app/models/graduation_topic.rb index 3aed72d9c..5a2a630e5 100644 --- a/app/models/graduation_topic.rb +++ b/app/models/graduation_topic.rb @@ -10,7 +10,7 @@ class GraduationTopic < ApplicationRecord has_many :journals_for_messages, :as => :jour, :dependent => :destroy # 题库 - + belongs_to :gtopic_bank, optional: true scope :search_by_name, ->(name) { where("graduation_topics.name LIKE ?", "%#{name}%")} scope :search_by_status, ->(status) {where(status: status)}