diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb index d97c26127..725c9815b 100644 --- a/app/controllers/courses_controller.rb +++ b/app/controllers/courses_controller.rb @@ -100,7 +100,12 @@ class CoursesController < ApplicationController # GET /courses/new def new @course = Course.new - normal_status("成功") + unless params[:subject_id].blank? + subject = Subject.find_by(id: params[:subject_id], excellent: 1) + render :json => {status: 0, course_name: "#{subject&.name}第#{subject&.courses&.count.to_i + 1}期"} + else + normal_status("成功") + end end # Get /courses/:id/settings diff --git a/app/controllers/shixuns_controller.rb b/app/controllers/shixuns_controller.rb index b9c2086d8..ebc2db1d6 100644 --- a/app/controllers/shixuns_controller.rb +++ b/app/controllers/shixuns_controller.rb @@ -564,7 +564,7 @@ class ShixunsController < ApplicationController 如果该实训是金课中的实训,则将当前用户加入到当期开课的课堂 if StageShixun.exists?(shixun_id: @shixun.id, subject_id: Subject.where(excellent: 1)) - subject = Subject.where(id: StageShixun.where(shixun_id: @shixun.id).pluck(:subject_id), excellent: 1).take(1) + subject = Subject.find_by(id: StageShixun.where(shixun_id: @shixun.id).pluck(:subject_id), excellent: 1) course = subject.courses.where("start_date is not null and start_date <= '#{Date.today}' and end_date is not null and end_date >= '#{Date.today}'").take if course.present? && !CourseMember.exists?(course_id: course.id, user_id: current_user.id) # 为了不影响后续操作,用create而不是create!