class TokyoMetro::Factory::Seed::Common::Info
Public Class Methods
new( info , *args , get_id: false )
click to toggle source
# File lib/tokyo_metro/factory/seed/common/info.rb, line 5 def initialize( info , *args , get_id: false ) @info = info set_optional_variables( args ) @get_id = get_id end
process( *variables )
click to toggle source
# File lib/tokyo_metro/factory/seed/common/info.rb, line 16 def self.process( *variables ) self.new( *variables ).seed end
Public Instance Methods
seed()
click to toggle source
# File lib/tokyo_metro/factory/seed/common/info.rb, line 11 def seed seed_main seed_optional_infos end
Private Instance Methods
db_class()
click to toggle source
# File lib/tokyo_metro/factory/seed/common/info.rb, line 38 def db_class self.class.send( method_name_for_db_instance_class ) end
hash_to_db()
click to toggle source
# File lib/tokyo_metro/factory/seed/common/info.rb, line 22 def hash_to_db raise "#{self.class.name}\##{__method__} is not defined yet." end
method_name_for_db_instance_class()
click to toggle source
# File lib/tokyo_metro/factory/seed/common/info.rb, line 42 def method_name_for_db_instance_class :db_instance_class end
seed_main()
click to toggle source
# File lib/tokyo_metro/factory/seed/common/info.rb, line 26 def seed_main if @get_id @id = db_class.find_or_create_by( hash_to_db ).id else db_class.find_or_create_by( hash_to_db ) end end
seed_optional_infos()
click to toggle source
# File lib/tokyo_metro/factory/seed/common/info.rb, line 34 def seed_optional_infos nil end