You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
概要 携わっている案件で作成しているRailsアプリケーションでは、JSONシリアライザとしてRablを採用していました。しかしどうもRablが遅い。 そこで、さまざまなシリアライザを比較してみることにしました。 世間では"ActiveModel Serializerが圧倒的に早いぞ!"というのをよく見るが、だいたいの検証記事はひとつのモデルのインスタンスをそのままシリアライズするような場合。 関連するモデルの情報を含めたり、モデルの属性から算出する値を含めたりする場合の性能比較は見つかりません。 そこで、より現実に即した状況で性能を比較検討してみましたというものです。。 全選手入場!! 比較対象は次のよっつ。 ActiveModel::Serializer Grape::Entity Jbuilder (個人的には一番書きやすくて好き) Rabl バージョンはそれぞれ active_mo
ここ一年ほど Python でバックエンドエンジニアやってます。自分の勉強も兼ねて、デモ用 API を Ruby on Rails で作成 したので、その時の実装と参考にした記事をまとめます。 間違った内容を記述してしまうことがあるかもしれません。その際はコメント欄やツイッターなどで指摘していただけると助かります。 対象 Ruby on Rails で作成したアプリに API の実装を考えている方。 主に Grape と Devise という gem を使って API に認証機能を作成する方法について紹介します。 Ruby on Rails の環境構築や、フレームワークのメリット、API の仕組みなどについては紹介しません。 余談: 実装する背景と選択肢 Rails は API を提供するのみで、残りはすべてクライアントに委譲する、というのが目的です。 フロントエンドは AngularJS
振る舞いが把握しきれずどうにも気持ち悪いが、期待しない振る舞いを避ける方法は見つかったので一旦まとめ。 https://github.com/kyanny/playground/tree/gh-pages/grape-entity-collection-but-not-array Item に対する ItemEntity がある場合、 ItemEntity.new(item) と ItemEntity.represent(item) は同じ意味になる どちらの as_json to_json を呼んでもちゃんと期待するものを返す Item のコレクションとして Items がある場合、 ItemEntity.new(items).as_json も ItemEntity.represent(items).as_json も例外を吐く ItemEntity missing attribute
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く