prefecture_jp というライブラリを作成した

prefecture_jpというライブラリを作成した。Hexにも上げた。

機能

都道府県コードから都道府県名への変換、またはその逆。都道府県コードは JIS X 0401 に対応(0埋め2桁の数字)。

使い方

単体で

都道府県コードから都道府県名を検索

iex> PrefectureJp.find("01").name
"北海道"

iex> PrefectureJp.find(code: "13").name
"東京都"

都道府名から都道府県コードを検索

iex> PrefectureJp.find(name: "東京都").code
"13"

都道府県情報の一覧

iex> PrefectureJp.all
[%PrefectureJp.Prefecture{area: "北海道", code: "01", name: "北海道",
  name_e: "hokkaido", name_h: "ほっかいどう",
  name_k: "ホッカイドウ"},
  .
  .
  .
 %PrefectureJp.Prefecture{area: "九州", code: "47", name: "沖縄県",
  name_e: "okinawa", ...}]
Ectoと一緒に

use PrefectureJp, 都道府県コードを持つカラム名 と書くことで、以下のように都道府県コードから都道府県名を求めることができる。

defmodule Place do
    use Ecto.Model
    use PrefectureJp, :prefecture_code

    schema "places" do
        field :prefecture_code, :string
    end
end
iex> place = %Place{prefecture_code: "23"}
iex> place |> Place.prefecture(:name)
"愛知県"

その他

このライブラリは jp_prefectureに大きな影響を受けている。