About Cacher
Web App
Download
Sign In
Sign Up
menu
Cacher is the code snippet organizer for pro developers
We empower you and your team to get more done, faster
Learn More
yatmsu
3/24/2015 - 8:58 AM
share
Share
add_circle_outline
Save
Ginza.rb 21回の発表資料。rails_adminのつらみとオススメgem達。
Ginza.rb 21回の発表資料。rails_adminのつらみとオススメgem達。
ginzarb_21.md
content_copy
file_download
Rendered
Source
rails_adminのつらみとオススメGemについて
rails_adminのつらみ
カスタマイズできるようで出来ない
rails_adminをカスタマイズする方法まとめ - Qiita
レコード件数が一定以上になると使えない機能
ダッシュボード
何も考えずに各モデルをカウントするのでレコード件数増えるとえらいことになる。
関連を付け替えするフォーム
出したり出さなかったりを一々切り替えるのがめんどい
検索機能がほぼ役に立たない
じゃあどうするか
プロジェクト用のscaffoldを作る方が良いのでは?
一つのモデルに対するを管理画面を作って大まかなレイアウトを決める
それをテンプレート化してlayoutとscaffoldのテンプレートを上書きする
コントローラーの構成もテンプレートで上書きできる
それ以上の場合はlib以下にgeneratorを書く
RailsのScaffoldテンプレートを上書きするススメ - Qiita
rails_adminが使えるケース
モデルがクソ多いがレコード件数は大したことない
単純なCRUDしかしない
権限の分離は無い
DB制約やバリデーションが明確であり条件分岐がほとんど無い
主要なモデルの関連が多段にならない
つまりほぼ使えないのではw
おすすめgem
ctran/annotate_models
プロジェクトに途中参加して入ってなければ最初に入れる
modelのコードを見るだけでカラムとインデックスがほぼ把握できるようになる
voormedia/rails-erd
ほぼ上に同じ
アプリケーション全体のイメージを把握する
mattheworiordan/capybara-screenshot
featureスペックが落ちたら落ちた時点でのスクリーンショットを勝手に取って保存してくれる
別gemだがこういうのもある
idobata/capybara_screenshot_idobata
kainosnoema/rack-lineprof
サクっとrblineprofをかける時に便利
どの行が何回呼ばれててどれくらい時間かかってるかすぐに分かる
railsware/rack_session_access
featureスペック中にcapybaraからsessionを弄れる
外部サービスに依存してセッションに情報を保持するようなテストケースに
steveklabnik/request_store
1リクエスト間でだけ使えるグローバルなデータストア
複雑なオブジェクトをまとめて利用するリクエストに
無駄なDBクエリを避けるためのデータ保持の場所として
httprb/http.rb
インターフェースがモダンなHTTPクライアントライブラリ
すげーシンプル
簡単なAPIクライアントとか
thoughtbot/griddler
メールを受け取って行う処理を簡単に実装できる
各種クラウドメール基盤のアダプター有
sendgrid
mandrill
mailgun
postmark
jalkoby/squasher
特定のポイントまでのmigrationを一つにまとめる
schema.rbベース
被りそうなメジャー所
vcr/vcr
elabs/pundit
zilkey/active_hash
y310/rspec-retry
fgrehm/letter_opener_web
intridea/hashie
ちゃんと使ったことないけど便利そうに見える
samg/diffy
テキスト同士のdiffを出力する
zendesk/biz
営業時間、営業日を計算する
Intrepidd/working_hours
上に同じ
jaimeiniesta/metainspector
htmlからメタデータをまとめて抜き出す
balvig/spyke
ActiveRecordっぽいRESTクライアント
e2/nenv
環境変数をメソッドにラップする
eval/envied
上に同じ
komagata/holiday_jp
日本の祝日を扱う
SpringMT/rack-favicon_all
大量のfavicon用metaタグを生成する
refile/refile
post carrierwave?
RubyMoney/money
金を扱うオブジェクト 単位変換とかできるバリューオブジェクト
kuboon/restful_error
RESTベースのAPIサーバーが返すエラーメッセージを生成する
esminc/adhoq
Web上からSQLクエリを直接発行してテーブルとして表示する
クエリの保存も出来る
kickstarter/rack-attack
rackレイヤーで攻撃者をBANしたりThrottoleかけたり
simonc/memfs
テスト実行時のファイル操作をメモリ上で行えるようにする
seejohnrun/ice_cube
繰り返しスケジュールを処理する
clear