J'ai deux modèles:Rails 3 - Validation avec 2 modèles et avertissements supplémentaires?
- conférence
- inscription
La conférence a une capacité et une liste d'attente. S'il y a une inscription pour une conférence, j'aimerais valider s'il y a des places libres disponibles.
a créé deux aides pour que:
def availableSeats
return self.capacity - self.enrollments.confirmedEnrollments.count
end
def waitListAvailable
return self.waitListCapacity - self.enrollments.waitList.count
end
Je pensais que d'avoir des contrôles dans le contrôleur d'inscription, mais il ne fonctionne pas.
if(@lecture.availableSeats <= 0)
if(@lecture.waitListAvailable <= 0)
flash[:error] = "Enrolment not possible as the waiting list is full."
# interrupt and don't save, but how?
else
flash[:warning] = "You are on the waiting list."
@enrollment.confirmed = nil
end
else
@enrollment.confirmed = DateTime.now
end
Des idées comment cela fonctionnerait?