Class: ForgeryJa::Address

Inherits:
Forgery::Address
  • Object
show all
Defined in:
lib/forgery_ja/forgery_ja/address.rb

Class Method Summary collapse

Class Method Details

.address_list(options = {}) ⇒ Hash

Returns AddressList in Japanese

日本語の住所のリストを生成して返します

Examples:

ForgeryJa(:address).address_list
# => {:state=>["大阪府", "おおさかふ", "オオサカフ", "オオサカフ", "Osaka"], :city=>["新宿区", "しんじゅくく", "シンジュクク", "シンジュクク", "Shinjyuku-ku"], :street=>["高倉町", "たかくらちょう", "タカクラチョウ", "タカクラチョウ", "Takakura-cho"], :number=>"6750-0"}

Parameters:

  • Hash

    options

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :state (Boolean) — default: true

    都道府県を含めるかどうか

  • :city (Boolean) — default: true

    群市区を含めるかどうか

  • :street (Boolean) — default: true

    町名を含めるかどうか

  • :number (Boolean) — default: true

    番地を含めるかどうか

Returns:

  • (Hash)


119
120
121
122
123
124
125
126
127
# File 'lib/forgery_ja/forgery_ja/address.rb', line 119

def self.address_list(options={})
  options = {:state => true, :city => true, :street => true, :number => true}.merge(options)
  list = {}
  list[:state] = state(:to => ForgeryJa::ARRAY) if options[:state]
  list[:city] = city(:to => ForgeryJa::ARRAY) if options[:city]
  list[:street] = street_name(:to => ForgeryJa::ARRAY) if options[:street]
  list[:number] = street_number if options[:number]
  list
end

.city(options = {}) ⇒ String

Returns CityName in Japanese

郡市区を返します

dictionary file name : cities_ja

Examples:

ForgeryJa(:address).city
# => 鉾田市

Parameters:

  • Hash

    options

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :to (Fixnum) — default: ForgeryJa::KANA

    生成する文字の種類を指定します

Returns:

  • (String)


47
48
49
50
# File 'lib/forgery_ja/forgery_ja/address.rb', line 47

def self.city(options={})
  options = ForgeryJa.default_options(options)
  ForgeryJa.parse(dictionaries[:cities_ja].random, options[:to])
end

.full_address(options = {}) ⇒ String

Returns FullAddress in Japanese

完全な住所を返します

Examples:

ForgeryJa(:address).full_address(:blank => true)
# => "愛媛県 掛川市 大手町 4-6-2"
ForgerJa(:address).full_address(ForgeryJa::ARRAY)
# => ["大阪府甘楽郡下仁田町山池町0-9-8", "おおさかふかんらぐんしもにたまちやまいけちょう0-9-8", "オオサカフカンラグンシモニタマチヤマイケチョウ0-9-8", "オオサカフカンラグンシモニタマチヤマイケチョウ0-9-8", "OsakaKanra-gun Shimonita-machiYamaike-cho0-9-8"]

Parameters:

  • Hash

    options

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :state (Boolean) — default: true

    都道府県を含めるかどうか

  • :city (Boolean) — default: true

    群市区を含めるかどうか

  • :street (Boolean) — default: true

    町名を含めるかどうか

  • :number (Boolean) — default: true

    番地を含めるかどうか

  • :blank (Boolean) — default: false

    それぞれのフィールドを半角スペースで区切るかどうか

  • :to (Fixnum) — default: ForgeryJa::KANA

    生成する文字の種類を指定します

Returns:

  • (String)


95
96
97
98
99
100
101
102
103
104
105
# File 'lib/forgery_ja/forgery_ja/address.rb', line 95

def self.full_address(options={})
  options = {:blank => false}.merge(ForgeryJa.default_options(options))
  list = address_list(options)

  result = []
  result = list[:state] if list[:state]
  result = list_merge(result, list[:city], options[:blank])
  result = list_merge(result, list[:street], options[:blank])
  result.collect!{|f| f + (options[:blank] ? ' ':'') + list[:number] } if list[:number]
  options[:to] == ForgeryJa::ARRAY ? result : result[options[:to]]
end

.state(options = {}) ⇒ String

Returns StateName in Japanese

都道府県名を返します

dictionary file name : states_ja

Examples:

ForgeryJa(:address).state
# => "東京都"
ForgeryJa(:address).state(ForgeryJa::KANA)
# => "トウキョウト"

Parameters:

  • Hash

    options

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :to (Fixnum) — default: ForgeryJa::KANA

    生成する文字の種類を指定します

Returns:

  • (String)


32
33
34
35
# File 'lib/forgery_ja/forgery_ja/address.rb', line 32

def self.state(options={})
  options = ForgeryJa.default_options(options)
  ForgeryJa.parse(dictionaries[:states_ja].random, options[:to])
end

.street_name(options = {}) ⇒ String

Returns StreetName in Japanese

町名を返します

dictionary file name : streets_ja

Examples:

ForgeryJa(:address).street_name
# => 富士見町

Parameters:

  • Hash

    options

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :to (Fixnum) — default: ForgeryJa::KANA

    生成する文字の種類を指定します

Returns:

  • (String)


62
63
64
65
# File 'lib/forgery_ja/forgery_ja/address.rb', line 62

def self.street_name(options={})
  options = ForgeryJa.default_options(options)
  ForgeryJa.parse(dictionaries[:streets_ja].random, options[:to])
end

.street_numberString

Returns StreetName in Japanese

番地を返します

format file name : streets_number_ja

Examples:

ForgeryJa(:address).streets_number
# => "1234-5"

Returns:

  • (String)


75
76
77
# File 'lib/forgery_ja/forgery_ja/address.rb', line 75

def self.street_number
  formats[:street_number_ja].random.to_numbers
end

.zip(options = {}) ⇒ String

Returns Zipcode in Japanese

日本の郵便番号を返します

Examples:

ForgeryJa(:address).zip
# => "123-4567"
ForgeryJa(:address).zip(:hyphen => true)
# => "1234567"

Parameters:

  • Hash

    options

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :hyphen (Boolean) — default: true

    ハイフン(-)を含めるかどうかを指定します

Returns:

  • (String)


14
15
16
17
18
# File 'lib/forgery_ja/forgery_ja/address.rb', line 14

def self.zip(options={})
  options = {:hyphen => true}.merge(options)
  format = ( options[:hyphen] ? "###-####" : "#######" )
  format.to_numbers
end