1 # frozen_string_literal: true
3 # == Schema Information
5 # Table name: languages
7 # code :string not null, primary key
8 # english_name :string not null
12 class Language < ApplicationRecord
13 has_many :diary_entries, :foreign_key => "language", :inverse_of => :language
15 validates :english_name, :presence => true
18 Language.transaction do
19 YAML.safe_load_file(file).each do |k, v|
20 Language.update(k, :english_name => v["english"], :native_name => v["native"])
21 rescue ActiveRecord::RecordNotFound
22 Language.create do |l|
24 l.english_name = v["english"]
25 l.native_name = v["native"]
33 name += " (#{native_name})" unless native_name.nil? || native_name == english_name