Railsで使えるGem

Rails3.2からMongoDBを使ってアプリをつくってみる~mongoid

投稿日:

MongoDBはとても素直で扱いやすいということがわかってきたので、以前作成した郵便番号・住所の相互検索アプリをまたつくってみた

参照

MongoDBのチュートリアルをこなす

KEN_ALL.CSVを使ってRailsで郵便番号を検索するサイトを作る1

KEN_ALL.CSVを使ってRailsで郵便番号を検索するサイトを作る2

 

Gemfile & bundle

Gemfileに追加

bundle

generate

必要に応じて設定ファイルを書き換える

今回は別の仮想PCにmongodbをインストールしたので、そのアドレスを指定した

データベース設計

設計というほどではないけれど、MySQLのときは半角スペース区切りにしておけば、それなりにlikeで早く検索できるんじゃないかという作戦だったけど、MongoDBはデータに配列をいれると、どれかに合致するものを選んでくれるので、これを使うといいらしい

www.mongodb.org/pages/viewpage.action?pageId=6488122

そこで、

zip: Strings

address: Array

address_kana: Array

という感じでモデルを作成した

データ挿入

seed.rbは前回のスペース区切りのデータを流用するのでこんなかんじで

rake db:seed

確認

うん、はいってる

controller

コントローラーの検索式はこんなかんじでマルチカラムみたいな感じでもひっかかる

これは複数語に対応していない、また前方一致検索のみにした

うむ動いてる あとでherokuにあげてどの程度速度が出るか試してみよう

 

-Railsで使えるGem
-, , ,

執筆者:

関連記事

Rails4でつかえるインラインエディタを試してみた〜X-editable-rails

目次1 x-editable2 bootstrapを導入3 x-editable-rails4 サンプルアプリ x-editable 文字をダブルクリックして編集できるやつ x-editable vi …

Rails3.2でページネーションをTwitter Bootstrapに対応させる~kaminari

github.com/amatsuda/kaminari 目次1 Gemfile & bundle2 設置3 テーマの作成 Gemfile & bundle [crayon-5953b …

Rubyでデータクリーニング~mechanize & active_support

  オライリー・ジャパンから「d3をはじめよう」という本が発売されたので読んだ 棒グラフ、折れ線グラフ、インタラクション(マウスオーバーで丸が大きくなるとかラベル表示とか、横のリストからグラ …

no image

Private_pubでのJSON通信の方法

  前回 Rails3.2でBackbone.jsとPrivate_pubでToDoアプリをリアルタイム化(できた!)   Gemfileへの追加とbundleの実行 privat …

no image

Rails3.2.8で自動テスト環境を整える〜cucumber+spork+guard

環境 ruby 1.9.3 & rails 3.2.8 参考 cucumber + spork + guard + factory_girl あってもよいが[crayon-5953b28013 …