Sha256: 538b2574ecb021865c528a611d542513c6f438f05db345d11ddc3cf12f73c9e6

Contents?: true

Size: 1.08 KB

Versions: 3

Compression:

Stored size: 1.08 KB

Contents

class Language < ApplicationRecord
  include MasterModel
  # If you wish to change the field names for brevity, feel free to enable/modify these.
  # alias_attribute :iso1, :iso_639_1
  # alias_attribute :iso2, :iso_639_2
  # alias_attribute :iso3, :iso_639_3

  # Validations
  validates :iso_639_1, :iso_639_2, :iso_639_3, presence: true
  validates :name, presence: true, format: { with: /\A[0-9A-Za-z][0-9A-Za-z_\-\s,]*[0-9a-z]\Z/ }

  def self.available_languages
    Language.where(iso_639_1: I18n.available_locales.map{|l| l.to_s}).order(:position)
  end

  private

  def valid_name?
    true
  end
end

# == Schema Information
#
# Table name: languages
#
#  id                        :integer          not null, primary key
#  name                      :string           not null
#  native_name               :string
#  display_name              :text
#  iso_639_1                 :string
#  iso_639_2                 :string
#  iso_639_3                 :string
#  note                      :text
#  position                  :integer
#  display_name_translations :jsonb            not null
#

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
enju_biblio-0.4.0.rc.1 app/models/language.rb
enju_biblio-0.4.0.beta.2 app/models/language.rb
enju_biblio-0.4.0.beta.1 app/models/language.rb