Użyłem pomocnika do wyświetlania koloru tła dla świąt i liści i nazywam metodę pomocnika z widoku w ten sposób -
%th{:class => weekend_class_top(date)}= date.strftime("%d")
metoda pomocnicza, która została wywołana -
def weekend_class_top(date)
if (date == date.end_of_month)
"weekend_color5"
elsif (date.to_s(:weekend) == "Sun")
"weekend_color3"
elsif @holidays.any?
@holidays.map.each do |holiday|
if (date == holiday)
"timesheet_holiday_color"
end
end
elsif @user_leaves.any?
@user_leaves.flatten.map.each do |leave|
if (date == leave)
"timesheet_leave_color"
end
end
end
end
kod, który napisałem, „Dostaję kolor tła tylko na święta, a nie na liście, chociaż obecne są zarówno święta, jak i liście.
To jest edytowana metoda pomocnicza -
def weekend_class_top(date)
if (date == date.end_of_month)
"weekend_color5"
elsif (date.to_s(:weekend) == "Sun")
"weekend_color3"
elsif @holidays.any?
@holidays.map.each do |holiday|
if @user_leaves.any?
@user_leaves.flatten.map.each do |leave|
if (date == leave)
"timesheet_leave_color"
end
end
elsif (date == holiday)
"timesheet_holiday_color"
end
end
end
end
Poprzez powyższy napisany metd „dostaję tylko kolor tła dla liści, ale nie na święta.
Odpowiedzi:
0 dla odpowiedzi № 1W ten sposób otrzymałem poprawny wynik -
def weekend_class_top(date)
if (date == date.end_of_month)
"weekend_color5"
elsif (date.to_s(:weekend) == "Sun")
"weekend_color3"
elsif @holidays.include?(date)
"timesheet_holiday_color"
elsif @user_leaves.flatten.include?(date)
"timesheet_leave_color"
end
end