--- title: Rails helpers category: Rails --- ### Date distance_of_time_in_words(Time.now, project.end_date) #=> 3 hours distance_of_time_in_words_to_now(project.end_date) #=> 3 hours time_ago_in_words 3.minutes.ago #=> "3 minutes" ### Numbers number_to_currency 20.33 number_to_currency 20.33, precision: 0 number_with_precision 3.14159, precision: 2 number_to_percentage 32 #=> "32%" number_with_delimiter 2048 #=> "2,048" number_to_human 12000000 #=> "12 million" number_to_human_size 12000000 #=> "12 MB" number_to_phone "5551234" #=> "555-1234" ### Cache <% cache project do %> <% cache [project, current_user] do %> <% cache_if admin?, project do %> <% cache_unless admin?, project do %> ### Tags tag("br") tag("img", src: "image.jpg") content_tag(:p, "Hello") ### Time select # Creates a time select tag that, when POSTed, will be stored in the article # variable in the sunrise attribute. time_select "article", "start_time" # All options are optional time_select "article", "start_time", \ include_seconds: true, minute_step: 15, prompt: true, prompt: { hour: "Choose hr", minute: "Choose min", second: "Choose sec" }, ampm: true # For dates (all options are optional) date_select "article", "written_on", \ start_year: 1995, use_month_numbers: true, discard_day: true, include_blank: true, order: [:day, :month, :year], default: 3.days.from_now, default: { day: 20 }, prompt: { day: 'Select day', month: 'Select month', year: 'Select year' } ### Time tag time_tag Date.today #=> '