Html 如何在CSS的帮助器中==建模方法类?
日历\u助手Html 如何在CSS的帮助器中==建模方法类?,html,css,ruby-on-rails,ruby,helper,Html,Css,Ruby On Rails,Ruby,Helper,日历\u助手 def day_classes(day) classes = [] classes.empty? ? nil : classes.join(" ") classes << "future" if day > Date.today # This make future days a white background, by default days are blue background # The Below Line Gives an Error
def day_classes(day)
classes = []
classes.empty? ? nil : classes.join(" ")
classes << "future" if day > Date.today # This make future days a white background, by default days are blue background
# The Below Line Gives an Error (I want missed_dates date_missed to be red background):
classes << "missed" if day == current_user.missed_dates.group_by {|i| i.date_missed.to_date}
end
css
.future { background-color: #FFF; }
.missed { background-color: red; }
我用日历创建了日历。将这一行添加到您的
日历
类:
delegate :current_user, to: :view
由于sessionhelper
自动包含在视图中,因此应该能够将view
变量传递给Calendar
类
谢谢你删除了这个错误,但是由于某种原因,我标记为date_missed的日子没有变红
我猜current_user.missed_dates.group_by{I|I.date_missed.to_date}
是一个错过日期的数组,因此,为了检查您的日期是否在该数组中,请使用include?
:
missed_dates = current_user.missed_dates.group_by {|i| i.date_missed.to_date}
classes << "missed" if missed_dates.include?(day)
missed_dates=当前用户。missed_dates.group_by{i|i.date_missed.to_date}
关于当前用户的类
。您是否正在使用designe
gem或提供此帮助的任何其他身份验证gem,或者您自己定义了current\u user
helper方法?尝试使用sessionhelp.current\u user
而不是日历帮助中的current\u user
。因此,此行classes.empty?nil:classes.join(“”)可以简化为classes.join(“”),除非classes.empty?
missed_dates = current_user.missed_dates.group_by {|i| i.date_missed.to_date}
classes << "missed" if missed_dates.include?(day)