It is pretty simple to get number of work days between two dates. For example we can get the number of workdays in this month.
start_date = Date.civil(2010, 8, 1)
end_date = Date.civil(2010, 8, 31)
workdays = (start_date..end_date).select { |day| ![0, 6].include?(day.wday) }.size