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
-,

執筆者:

関連記事

ActionCableのサンプルをみてみた

By: Samantha Brough – CC BY 2.0 目次1 ActionCableとは2 rails4での利用3 redisサーバーの準備4 cableサーバーの準備5 チャッ …

Rubyでウェブサイトを操作してリストをつくる〜mechanize

    By: JoshSemans   以前からRailscastsというRuby on Railsの動画サイトが好きでよく見ているのだが、380近く動画があって気にな …

no image

Rails4とPostreSQL9.3で全文検索〜pg_bigm

目次1 準備2 migration3  使い方 準備 エクステンションを導入しておく Ubuntu Server12.04でPostgreSQL9.3をつかう〜pg_bigmで全文検索 migrati …

no image

Rubyでエクセル帳票印刷(.xls)~spreadsheet

  pdfとdocxとxlsが作成できれば帳票印刷で困ることはなさそう spreadsheetというgemを使ってみた 参考 dragonstar.asablo.jp/blog/2009/0 …

Ruby+guardでSass+Compass+CoffeeScriptの自動コンパイル環境を整える

    Ubuntu12.04.1でCoffeeScriptの自動makeとブラウザの自動リロード~guard-coffeescript すでにCoffeeScriptを自動Mak …