У меня есть 2 ресурса, оба реализованы вложенными ресурсами.Маршрут выглядит следующим образом: /students/:id/monitorings/inscribir
Мне нужно вызвать из контроллера мониторинга функцию модели, которая находится в students
.
PD: у мониторинга нет модели, так какне имеет базы данных, поскольку это действие для ресурса students
. Код функции модели студента следующий:
def self.calc_credits(id_student)
credits = 0
notes = Note.where(student_id: id_student)
notes.each do |v|
credits = credits + v.subject.creditos
end
return credits
end
Код контроллера мониторинга:следующее:
def inscribir
@student = Student.find(params[:student_id])
@groups = Group.all
encontrado = false
@mensaje = ""
@groups.each do |s|
if s.subject_id == params[:codigo_materia] and s.student_id = nil
encontrado = true
end
end
if !encontrado
@mensaje = "No se ha encontrado ninguna materia disponible"
end
creditos = calc_credits(params[:student_id])
puts creditos
end
Спасибо.