Похоже, вы хотите использовать select:
@student_classes_on_monday = @student_classes.select do |student_class|
student_class.day_of_the_week.include? "Monday"
end
Выбор вернет все элементы, для которых блок истинен. Таким образом, вы можете просто передать свое состояние как блок и вернуть предметы, которые соответствуют критериям.
Вы также можете использовать ключевое слово «like», чтобы попытаться сопоставить это в запросе вашей базы данных. Я не уверен, на что похожа ваша схема, но что-то вроде этого может помочь вам начать:
@student.school_classes.find(:all, :conditions => ['day_of_week LIKE ?', '%Monday%'])
Я сам немного разбираюсь в синтаксисе этого, поэтому я вытащил этот пример отсюда (и, следовательно, не буду гарантировать, что он полностью корректен):
http://railsruby.blogspot.com/2006/08/like-as-condition-to-get-records.html