Railsで使えるGem

Rails4でのJSONテンプレート~jbuilder+rabl+ruby

投稿日:

By: WonderlaneCC BY 2.0[/caption]

Rails4からJSONも標準でjbuilderを使ってテンプレートから出力できるようになった

けど、しっくり来ないので簡単に比べてみた

以下の例はすべて次のようなJSONを返すテンプレート

 

 

jbuilder

github.com/rails/jbuilder

#320 Jbuilder

jbuilderでは、jsonオブジェクトから始まる

jsonオブジェクトは、基本的に、キーをメソッドにして、値をバリューに取る

たぶんmethod missingってやつだと思う

そのほかにextract!みたいなrailsのメソッドも使える

extract!はこういうふうにも書けるみたい(Ruby1.9以降)

たぶんいちいちjsonオブジェクトを使うのと、ヘルパーメソッドとJSONキーを同じように扱うというのが違和感なのかもしれない

xml builderというgemと揃えているっていうことなので、そちらに馴染みがある人にはいいのかもしれない

jbuilderで良い感じのハッシュ形式のJSONを返したいならこれだけ押さえておけば大丈夫かも

github.com/cimm/dotvim/blob/master/ftdetect/jbuilder.vim

Rails Jbuilderのあまり知られてないかもしれない?メソッド3選

 

rabl

Backbone.jsのためにRails3.2でJSON APIをつくる~RABL

github.com/nesquena/rabl

#322 RABL

rablは前にやったので、なんとなくやろうとすることはわかる

rablのGitHubのスター数は1994、これに対してjbuilderが938だから、まだrablの方が人気があるのかもしれない

 

ruby

#379 Template Handlers pro

Rails4からは.rubyというテンプレートでrubyコードをそのままテンプレートとして使えるようになった

なんとなく、これが一番わかりやすかったりする

複雑になると可読性が落ちるのかもしれないけど

 

*もちろんerbでもjsonを書けるけど、あまりうまく書けない

Railsでajaxなテーブルを使う~datatables

-Railsで使えるGem
-,

執筆者:

関連記事

Rails3.2でJasmineをつかってCoffeeScriptをテスト~jasminerice

    #261 Testing JavaScript with Jasmine (revised)   addyosmani.github.com/backbone-f

Railsでjavascriptやcoffeescriptをつかうとき便利かもしれないGem

By: Stan Dalone & Miran Rijavec – CC BY 2.0 目次1 oj2 gon3 js-routes4 rails-dev-tweaks oj gi …

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

MongoDBはとても素直で扱いやすいということがわかってきたので、以前作成した郵便番号・住所の相互検索アプリをまたつくってみた 参照 MongoDBのチュートリアルをこなす KEN_ALL.CSVを …

Rails3.2とBackbone.jsでサーバーサイドのページネーション

By: Haldane Martin – CC BY 2.0   前提 Rails3.2とBackbone.jsでサーバーサイドのフィルタリング Rails3.2とBackbon …

no image

Railsで動画ファイルを管理する~CarrierWave Flowplayer

  参考 Ruby on Rails 3.2でファイルアップロード〜CarrierWave & RMagick Rails3で動画配信を試用~flowplayer 環境 Ubuntu …