Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Helpers to allow saving multiple Globalize3 translations in the same request
branch: master

This branch is 5 commits ahead of rilla:master

Merge pull request #4 from webervin/bd7c727956e065164eb3b18150e014468…


Enables simple_form goodness to make translation forms even simplier
latest commit bd756ebb9b
@fidel authored
Failed to load latest commit information.
lib Support for SimpleForm if available
README.rdoc added readme file
init.rb Initial commit


Batch translation

Helper that renders globalize_translations fields on a per-locale basis, so you can use them separately in the same form and still saving them all at once in the same request.


Batch translation supports Globalize 3 and is not backward compatible.

rails plugin install git://

Model configuration

In model, which uses Globalize after definition

translates :title, :teaser, :body # or any other fields, which you translate


accepts_nested_attributes_for :translations

so it'll look like

class Post < ActiveRecord::Base
  translates :title, :teaser, :body
  accepts_nested_attributes_for :translations

It's necessary for proper working.


Now, use it in your view file, like in these below:

<h1>Editing post</h1>

<% form_for(@post) do |f| %>
  <%= f.error_messages %>

  <h2>English (default locale)</h2>
  <p><%= f.text_field :title %></p>
  <p><%= f.text_field :teaser %></p>
  <p><%= f.text_field :body %></p>


  <h2>Spanish translation</h2>
  <% f.globalize_fields_for :es do |g| %>
    <p><%= g.text_field :title %></p>
    <p><%= g.text_field :teaser %></p>
    <p><%= g.text_field :body %></p>
  <% end %>


  <h2>French translation</h2>
  <% f.globalize_fields_for :fr do |g| %>
    <p><%= g.text_field :title %></p>
    <p><%= g.text_field :teaser %></p>
    <p><%= g.text_field :body %></p>
  <% end %>

  <%= f.submit "Save" %>
<% end %>


Copyright © 2010 Szymon Fiedler, released under MIT License.

Something went wrong with that request. Please try again.