У меня есть приложение для рельсов, в котором учащиеся могут подать заявку на проекты, опубликованные работодателями. У меня есть так, что у Студента есть несколько проектов, а Project принадлежит _ Student. Проблема в том, что проект может существовать в течение длительного времени, прежде чем студент будет выбран для него. Я имею в виду, что до тех пор, пока работодатель не нажмет кнопку проката в представлении, проект student_id равен нулю. Как только работодатель нажимает кнопку «нанять», я пытаюсь установить ученика проекта студенту, который был нанят. По какой-то причине я не могу этого сделать. Вот модель проекта:Rails принадлежит_от отношения, если соответствует определенному условию
class Project < ActiveRecord::Base
belongs_to :student
belongs_to :employer
has_many :relationships
def change_it
self.student_id = self.relationships.where(:state => :active).first.student_id
self.relationships.each do |relationship|
if relationship.state != :active
relationship.deny_applicants
end
end
end
end
При нажатии на кнопку проката, он принимает меня к следующей странице, как обычно, но когда я проверить student_id проекта в консоли, он по-прежнему равна нулю.
Как исправить это? Благодарю.
Идеи кто-нибудь? Я работаю часами - все равно не могу заставить его работать. – Philip7899