On Tue, Feb 23, 2010 at 4:33 PM, sgallo1 <sgal...@gmail.com> wrote: > Wondering what would be the best way to implement this. > > I need to store that an item occurs on a specific day of the week or > everyday. > Say in the model we have a title and a day of week. > I was thinking doing a 0-7 in my model for the item representing the > day of the week with zero being everyday. > > For a selection criteria say I wanted to search for every title > starting on Monday, Wendsday and Friday where each day on the > selection screen would be checkbox representing the days Monday - > Sunday and Everyday (clicking everyday would remove the checkboxes > should someone select everyday and a day of the week) > > What would the active record query look like to dynamically pass in > the days of the week selected should say mon, wed and fri get selected > given that what they selected is past to the controller in a > "days_of_week" variable. > > I'm not totally tied to the idea of storing the day as a number so if > anyone has any better implementations of this I'm listening.
Something like # get weekdays_selected to be an array of the numbers corresponding to the checked boxes plus 0 # For example if you wanted to find events on Mondays and Wednesdays, weekdays_selected should be: # [0, 2, 3] Items.all(:conditions => ["weekday IN ?", weekdays_selected]) or if you're using Rails3 Items.where("weekday IN ?", weekdays_selected) If it were me I might think about tweaking this a bit and use 7 instead of 0 for any day, since Ruby's Date and Time use 0 for Sunday through 6 for Saturday. Caveat, none of the above code has been tested, and I've only had two sips of coffee this morning. -- Rick DeNatale Blog: http://talklikeaduck.denhaven2.com/ Twitter: http://twitter.com/RickDeNatale WWR: http://www.workingwithrails.com/person/9021-rick-denatale LinkedIn: http://www.linkedin.com/in/rickdenatale -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-t...@googlegroups.com. To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.