List of html_options available

I've noticed lots of people online complain about not good documentation for Rails. I'm a PHP programmer but I'm a newbie on Rails.

I'm creating a form with a drop-down menu. I finally got to do it. I noticed there is a html_options parameter for select. I was curious as to what other html_options are available but couldn't find a list of options. I have been looking for it at the api http://api.rubyonrails.org but can't seem to find it. Maybe I'm not looking in the right places.

Can somebody please point me to a place in a documentation where I can find a complete list for the different options for html_options parameter?

http://www.w3.org/TR/html401/interact/forms.html#edef-SELECT

HTH,

Hi,

html_options are just normal attributes you write on to the html-tags like: class, style, onchange and so on.

Greets, Max.

Thanks, I hadn't noticed it. But it seems there are other that are not normal attributes.

For example, for select (drop-down menu) you have :prompt => "Select", which is not a normal select attribute.

Maksim Gudovsikov wrote:

Thanks, I hadn't noticed it. But it seems there are other that are not normal attributes.

For example, for select (drop-down menu) you have :prompt => "Select", which is not a normal select attribute.

Hmm, you're right. I think here is something helpful:

http://rubydoc.info/docs/rails/2.3.8/ActionView/Helpers/FormOptionsHelper

http://rubydoc.info/ is imho the best ruby and rails docs on the net. Maybe it helps you next time you search something.

Max.

This particular point is not well documented.

The best thing to do is to read the source and experiment: https://github.com/rails/rails/blob/52fddcc653458456f98b3683dffd781cf00b35fe/actionview/lib/action_view/helpers/tag_helper.rb

I conclude that:

  • boolean attributes must receive true or false and work as expected
  • the only keys that treat hashes magically are are data and aria, others just return inspect on the Hash which is not what we want
  • Array values are space joined
  • anything else just generates a a=“b” attribute after string conversions

Then as you noticed, helpers may add more keys which are treated specially. Those are well documented on a per-helper basis.