JSON を自動で整形して表示する Firefox アドオン「JSONView」
JSON(JavaScript Object Notation) は今では JavaScript 以外でも普通に使われるデータ記述形式であり、開発の際に何かしらの JSON を出力する場合、その中身を確認したいこともあるはず。
しかし、多くのケースにおいて自動生成される JSON は整形されておらず、一目にはわかりにくいことも。
そんなときに役立つのが「JSONView」である。これを Firefox にインストールして JSON 形式のファイルを開くと自動で整形してくれる。またオブジェクトがネストされている部分は伸縮・展開もブラウザでできる。
なお、文字化けする場合があるらしいので設定で「HTTP Accept リクエストヘッダーに『application/json』を追加する」のチェックを ON にしておくといい。
Google Chrome にも同名の拡張がある。
Rails で複合主キーを扱う
ここが参考になりそう。
Railsで規約に沿わない古いデータを扱う - Qiita
Heroku に Rails アプリケーションをデプロイするまで
GitHub のアカウント取得と GitHub for Windows のインストール
The world’s leading software development platform · GitHub
まぁこれをしないと始まりませんのでw
2014/02/22 追記 : Aptana Studio 3 に内蔵の Git を使うという方法もある。Eclipse Kepler なら EGit が最初から入っているのでそれを使うのもあり。
Heroku のアカウント取得
Heroku Toolbelt のインストール
ここからダウンロード。従前の gem install heroku
は非推奨(だけど一応動くっぽい ?)。
The Heroku CLI | Heroku Dev Center
Git はインストールしなくて良い(すでに GitHub for Windows を入れているから)。Ruby もインストールされるが、Heroku を作動させるためのローカルなもので、元の Ruby とは競合しないのでご安心を。
公開鍵の作成と Heroku への公開鍵の登録
Git Shell を起動してコマンドを叩く。
ssh-keygen -t rsa
何かパスワードがどうのとか聞かれるけど何も打たずに Enter で良い*1。これで C:\User\(ユーザー名)\.ssh に id_rsa と id_rsa.pub が作成される。で、引き続き shell で
heroku keys:add
Rails アプリケーションの作成
まー、ここは個別にせっせとやっていただくとして、共通の作業である Gemfile の修正について。
ruby '2.0.0'
を追加して、Heroku が Ruby 2.0.0 ベースで走るようにする。さらに
gem 'sqlite3'
のところを
group :development do gem 'sqlite3' end group :production do gem 'pg' end
と書き換え、sqlite3 は開発環境のみで、本番では pg*2 を使うようにする。Gemfile の修正が終わったら一回 bundle update を掛けて Gemfile.lock を更新させる。64bit 版 Ruby の人は前回の記事も参考に。
Assets の事前コンパイル
Assets(SCSS, CoffeeScript) は事前コンパイルしておく。
rake assets:precompile
さらに config\environments\production.rb の
config.serve_static_assets = false
を
config.serve_static_assets = true
に修正。
2013/11/18 追記 : どうやらこの操作は不要で、config\environments\production.rb の
config.assets.compile = false
を
config.assets.compile = true
に変更するだけで良いようです(config.serve_static_assets
は false
のまま)。
参考サイト : Heroku で Asset Pipeline を使う - Qiita
いざデプロイ !
後は変更を commit して再び Git Shell でアプリケーションのフォルダに移動して
heroku create (アプリケーション名) git push heroku master heroku run rake db:migrate heroku run rake db:seed
でデプロイとデータベースの作成、初期データの投入ができる。なおアプリケーション名はクラウドサーバのお約束で Heroku 全体で一意である必要があり、省略すると自動で適当なアプリケーション名が付けられる*3。
*1:公開鍵を保護するためのパスワードを使用するかどうかなので、何らかの理由で保護したい場合はパスワードを入力すること。
*2:PostgreSQL 用の RubyGems。Heroku はデフォルトで PostgreSQL をデータベースとして採用しており、SQLite3 は使えない。
*3:後から変更もできるが、(アプリケーションフォルダ)\.git\config を修正しないといけない
64bit 版 Ruby 2.0 で Rails 4 を使う
1. 前回の記事を参考に 64bit 版 SQLite3 をビルドし、sqlite3.dll をパスの通っているところに配置する(個人的には C:\SQLite のように別フォルダを作ってそこにパスを通すのをお勧め)。
2. 64bit 版の Ruby 2.0.0-p247(現時点での最新版)をインストール。
3. 64bit 版の DevKit を適当なフォルダに展開する(SQLite3 のビルド時に使用したのであればこの手順は省略)。
1. 〜 3. はどれから始めても O.K.
4. DevKit を Ruby に設定する。DevKit を展開したフォルダで
ruby dk.rb init
したあと config.yml に
- C:/(Ruby をインストールしたフォルダ)
の一行を追加してから
ruby dk.rb install
5. Rails のインストール
gem install rails --no-ri --no-rdoc
6. sqlite3 gem のインストール
gem install sqlite3 --no-ri --no-rdoc
64bit 版(sqlite3-1.3.8-x64-mingw32)がインストールされることを確認。
5. と 6. はどっちを先にやっても O.K.
7. Rails アプリケーションの作成
コマンドラインから作成しても Aptana Studio などの IDE から作っても良い。bundle install
も走らせて良い。
8. Gemfile.lock の編集
ここが肝。作成したアプリケーションフォルダの直下にある Gemfile.lock を開き、92 行目(になってるはず)の
sqlite3 (1.3.8-x86-mingw32)
を
sqlite3 (1.3.8-x64-mingw32)
に書き換えて保存する。保存後は bundle update
などは走らせないこと ! せっかく編集した Gemfile.lock が上書きされてしまいます。
9. 以上で問題ないはず。快適な 64bit 版 Rails ライフを !
参考サイト : Ruby 2.0.0 – Rails 4.0 に SQLite3 をインストールしたときのメモ [Windows] – superable
64bit 版 SQLite3 をビルドする
参考にしたのはここ↓
Ruby on Rails のインストール (Windows 7 64bit) - Chaosのメモ @wiki - アットウィキ
必要なもの
DevKit の 64bit 版ないし MinGW の 64bit 版。
DevKit は RubyInstaller for Windows からダウンロードできる。あらかじめ x86_64-w64-mingw32-gcc.exe のあるフォルダにパスを通しておくこと。
ソースコードのダウンロード
SQLite の公式サイトから sqlite-amalgamation-xxxxxxx.zip をダウンロード(xxxxxxx はバージョン番号)して、適当なフォルダで展開する。
sqlite3.dll のビルド
コマンドプロンプトで、ソースコードを展開したフォルダに移動して
x86_64-w64-mingw32-gcc -O2 -shared -o sqlite3.dll -Wl,--out-implib=libsqlite3.dll.a sqlite3.c
と入力し Enter で実行。
sqlite3.exe のビルド
Rails 等から使用するだけなら dll があれば十分だが、exe も欲しいという人は同じフォルダで
x86_64-w64-mingw32-gcc -O2 -o sqlite3.exe shell.c libsqlite3.dll.a
と入力し Enter で実行。何か警告っぽいメッセージが出るけど sqlite3.exe はちゃんと作れている模様。
で、結局何がしたいのか
まぁ結局は Ruby on Rails の 64bit 環境が欲しいわけですよ。Rails 自体は 64bit 版の Ruby を入れて 64bit 版の DevKit を入れてやればインストールできるのだけど、bundle install
したときの sqlite3 がらみの問題はどうなったんだろ ?
2013/11/23 追記 : Qiita にまとめました。
http://qiita.com/akaneko3/items/0e99c3c1366dfbad006f
Scala で階乗(真打登場)
移動しました → Scala で階乗 - 似非プログラマのうんちく