Tips for Job Interviews as a Junior Software Developer Sep 27, 2020
As coding bootcamps such as Coder Academy and General Assembly churn out more and more software developers, and as more and more people…
Web applications normally have many forms. Building forms is always a mind-boggling task because it involves repetition and chaos.
A shortcut is to use a form builder / DSL, such as Formtastic.
As I am using Rails 3, and the Rails 3 port of Formtastic isn’t complete yet, I thought I’d just use the plain vanilla Rails built-in form helper.
First of all, I am using Haml instead of ERb. Already, I got the out-of-box clean looking Haml markup.
Some of you might not be aware of the fact that Rails’ built-in form helper already does i18n support.
If you have the following form:
-form_for(@post) do |f|
=f.label :title
=f.text_field :title
=f.label :body
=f.text_area :body
=f.submit
You can simply translate the labels as such in config/locales/en.yml
.
helpers:
label:
post:
title: 'Post Title'
body: 'Post Content'
Better yet, I am using r18n instead of i18n, so I can instead translate them in app/i18n/en.yml
.
helpers:
label:
post:
title: Post Title
body: Post Content
Alternatively, instead of placing the translation strings under helpers.label
, you may place them directly under your models, i.e. activemodel.attribute
.
If you’re using the Rails 2.3 stable branch from Github, you can also use the built-in i18n support. Although instead of helpers.label
, you use views.labels
, as seen in this commit.