has_many :diary_entries, :foreign_key => 'language'
+ def self.load(file)
+ Language.transaction do
+ YAML.load(File.read(file)).each do |k,v|
+ begin
+ Language.update(k, :english_name => v["english"], :native_name => v["native"])
+ rescue ActiveRecord::RecordNotFound
+ Language.create do |l|
+ l.code = k
+ l.english_name = v["english"]
+ l.native_name = v["native"]
+ end
+ end
+ end
+ end
+ end
+
def name
name = english_name
name += " (#{native_name})" unless native_name.nil?
add_primary_key :languages, [:code]
- YAML.load(File.read(RAILS_ROOT + "/config/languages.yml")).each do |k,v|
- Language.create do |l|
- l.code = k
- l.english_name = v["english"]
- l.native_name = v["native"]
- end
- end
+ Language.load(RAILS_ROOT + "/config/languages.yml")
add_foreign_key :users, [:locale], :languages, [:code]
add_foreign_key :diary_entries, [:language_code], :languages, [:code]
--- /dev/null
+#!/usr/bin/env ruby
+
+require File.dirname(__FILE__) + '/../../config/environment'
+
+Language.load(RAILS_ROOT + "/config/languages.yml")