Я пробовал этот код для условия ниже
school.school_code != params[:school_code]
когда я набираю этот код, я получаю один и тот же ответ. Он обновляет коды учителя, кода ученика и школьного кода для обоих условий, независимо от того, является ли оно истинным или ложным, что означает, что if - else не работает.
partials_controller.rb
class PartialsController < ApplicationController
skip_before_action :verify_authenticity_token
def update_school_and_teacher_code
school = School.find_by_id(params[:id])
if school.school_code != params[:school_code]
School.transaction do
school.update_attributes!(:school_code => params[:school_code])
teacher = Teacher.find(params[:teacher_id])
teacher.update_attributes!(:teacher_code => school.school_code)
student = Student.find(params[:student_id])
student.update_attributes!(:student_code => school.school_code)
render json: { message: ' data updated '}
end
else
render json: { message: ' data not updated '}
end
rescue => e
render json: { error: ' data not found '}
end
end
все написано в этом коде, но if-else не работает, поэтому при выполнении условия true или false для обоих
сообщение: данные обновлены