我正在使用日历宝石Events
在我的一类中生成基本日历。
在我的应用程序助手中,我创建了一个助手方法来调用它:
def calendar
@calendar ||= Cal::MonthlyCalendar.from_params params[:month], start_week_on: :sunday
end
日历以默认方式通过天和周循环正常工作以创建月历,但我想创建一个仅显示当前周和下一周的日历。目前,我正在通过if
视图中的一个重要声明来做到这一点:
...
<% calendar.weeks.each do |week| %>
<tr>
<% week.each do |day| %>
<% if day.number >= Date.today.beginning_of_week(start_day = :sunday).day && day.date.month == Date.today.month %>
...
如您所见,这不是很合适。有没有办法为此创建一个“类方法”或“范围”,即使它本身不是一个对象?显然,上面没有显示之前或未来的几个月,这意味着它必须更加冗长才能工作,所以我正在寻找一个更优雅的解决方案。但是,我将把方法放在哪里?
提前感谢您的帮助!