HTML5 placeholder attribute and i18n proposal

200 views
Skip to first unread message

Paul Schreiber

unread,
Nov 29, 2010, 5:31:22 PM11/29/10
to rubyonra...@googlegroups.com
This was filed as:
<https://rails.lighthouseapp.com/projects/8994/tickets/6080-i18n-support-for-html5-placeholder-attribute>
…and Aditya Sanghi suggsted I post to the list about it

Currently, Rails' I18n system automatically looks up localized text for <label> tags. It would be nice if it did something similar for the HTML5 placeholder attribute.

Your en.yml file would like this:

helpers:
placeholder:
person:
first_name: "John"
last_name: "Doe"

Your ERB would look the same:
<%= f.text_field :first_name %>

Your HTML would look like this:
<input id="person_first_name" name="person[first_name]" placeholder="John" type="text" />

Currently, you have to clutter up your markup like so:
<%= f.text_field :first_name, :placeholder => t('helpers.placeholder.person.first_name') %>

Paul

Peter De Berdt

unread,
Nov 30, 2010, 10:51:19 AM11/30/10
to rubyonra...@googlegroups.com
Should be fairly trivial to add this yourself:

- alias the to_input_field_tag from Rails to to_input_field_tag_old (it's in the InstanceTagMethods module of Rails if I recall correctly)
- define your own to_input_field_tag
- all that method needs to do is merge the I18n.t("helpers.placeholder.#{object_name}.#{method_name}") value into the options hash as :placeholder and then call the aliassed to_input_field_tag_old


Best regards


Peter De Berdt


Walter McGinnis

unread,
Nov 30, 2010, 2:24:35 PM11/30/10
to rubyonra...@googlegroups.com
I would encourage you to implement it and submit a patch following the
processes outlined in the contributors guide:

https://rails.lighthouseapp.com/projects/8994/sending-patches

It seems a good idea to me and creating a ticket and a patch for the
feature is the best way to get the Rails Core team to consider it in
detail.

Cheers,
Walter

P.S. - plus if it gets accepted, you have a nice little bragging right
for "I have contributed to the source code for Rails"

> --
> 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 rubyonra...@googlegroups.com.
> To unsubscribe from this group, send email to
> rubyonrails-ta...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/rubyonrails-talk?hl=en.
>

Paul Schreiber

unread,
Dec 7, 2010, 2:07:46 AM12/7/10
to Ruby on Rails: Talk
On Nov 30, 10:51 am, Peter De Berdt <peter.de.be...@pandora.be> wrote:

> Should be fairly trivial to add this yourself:
>
> - alias the to_input_field_tag from Rails to to_input_field_tag_old  
> (it's in the InstanceTagMethods module of Rails if I recall correctly)
> - define your own to_input_field_tag
> - all that method needs to do is merge the  
> I18n.t("helpers.placeholder.#{object_name}.#{method_name}") value into  
> the options hash as :placeholder and then call the aliassed  
> to_input_field_tag_old

Thanks for the pointer.

I submitted a patch to to_input_field_tag and attached it to the
ticket:
<https://rails.lighthouseapp.com/projects/8994-ruby-on-rails/tickets/
6080>


Paul
Reply all
Reply to author
Forward
0 new messages