Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Sites com vários idiomas usando mongoid

Sites com vários idiomas usando mongoid

Com a proximidade da Copa do Mundo e das Olimpíadas é maior a necessidades de fazermos sites com mais de um idioma. E não são só sites de grandes empresas. A maiorias dos hotéis deverá ter uma versão em inglês do seu site. Na nu design fizemos vários projetos com mais de um idioma e por isso surgiu a necessidade de simplificar esse trabaho.

Avatar for tiagogodinho

tiagogodinho

January 27, 2012
Tweet

Other Decks in Programming

Transcript

  1. TEXTOS DINÂMICOS QUAL O MELHOR JEITO DE FAZER ISSO ?

    sexta-feira, 27 de janeiro de 2012
  2. GLOBALIZE3 Active Record Simples de usar :) Necessidade de uma

    tabela com as traduções :( sexta-feira, 27 de janeiro de 2012
  3. MONGOID MongoDB Simples de usar :) Armazena as traduções em

    um Hash {en: ‘Hello’, pt:‘Oi’} sexta-feira, 27 de janeiro de 2012
  4. MONGOID # Using a default locale of en. product =

    Product.new product.description = "Marvelous!" I18n.locale = :de product.description = "Fantastisch!" product.attributes #=> { "description" => { "en" => "Marvelous!", "de" => "Fantastisch!" } } product.description #=>"Fantastisch!" product.description_translations #=> { "en" => "Marvelous!", "de" => "Fantastisch!" } Product.where(description: “Marvelous!”) sexta-feira, 27 de janeiro de 2012
  5. E OS FORMS ? 1ª tentativa - fields_for 2ª tentativa

    - criação de helper expecificos post[“description_translations”][“en”] Localized Fields github.com/tiagogodinho/localized_fields sexta-feira, 27 de janeiro de 2012
  6. LOCALIZED FIELDS <%=  form_for  @post  do  |f|  %>    <%=

     f.localized_fields  do  |localized_fields|  %>        <%=  localized_fields.label  :title  %>        <%=  localized_fields.text_field  :title  %>    <%  end  %> <%  end  %> sexta-feira, 27 de janeiro de 2012
  7. LOCALIZED FIELDS <%=  form_for  @post  do  |f|  %>    <%=

     f.localized_fields  :title  do  |localized_fields|  %>        <%=  localized_fields.label  :en  %>        <%=  localized_fields.text_field  :en  %>        <%=  localized_fields.label  :pt  %>        <%=  localized_fields.text_field  :pt  %>    <%  end  %> <%  end  %> sexta-feira, 27 de janeiro de 2012