Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

easy_globalize_accessors

Package Overview
Dependencies
Maintainers
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

easy_globalize_accessors

  • 1.4.0
  • Rubygems
  • Socket score

Version published
Maintainers
4
Created
Source

= EasyGlobalizeAccessors

== Introduction

Generator of easy accessor methods for models using Globalize.

Use globalize_accessors with list of translated fields you want easily access to and extra :locales array listing locales for which you want the accessors to be generated.

This way a single form can be used to edit given model fields with all anticipated translations.

== Installation

gem install easy_globalize_accessors

== Example

Definition like this:

class Product translates :title, :description globalize_accessors :locales => [:en, :pl], :attributes => [:title] end

Gives you access to methods: title_pl, title_en, title_pl=, title_en= (and similar set of description_* methods). And they work seamlessly with Globalize (not even touching the "core" title, title= methods used by Globalize itself).

:locales and :attributes are optional. Default values are: :locales => I18n.available_locales :attributes => translated_attribute_names

which means that skipping all options will generate you accessor method for all translated fields and available languages.

You can also get locales for class with "globalize_locales" method: Product.globalize_locales # => [:en, :pl]

== Always define accessors

If you wish to always define accessors and don't want to call globalize_accessors method in every class, you can extend ActiveRecord::Base with such module:

module TranslatesWithAccessors

def translates(*params)
  options = params.extract_options!
  options.reverse_merge!(:globalize_accessors => true)
  accessors = options.delete(:globalize_accessors)
  super
  globalize_accessors if accessors
end

end

== Licence

Copyright (c) 2009-2010 Tomek "Tomash" Stachewicz (http://tomash.wrug.eu), Robert Pankowecki (http://robert.pankowecki.pl) released under the MIT license

FAQs

Package last updated on 05 Nov 2013

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc