Ruby on Rails
コードリファクタリング中にテストを書こうと思ったのですが、ふと考えたら私のRspec冗長な気がする…!と思い、会社のSlackで先輩方にRspecの書き方を質問してみました。 ちなみに私が書いていたテストコードはこんな感じ。 describe 'hoge_method' do conte…
2016/5/18に解決しました。 原因と解決方法は下部に記載しています。 やろうとしていること CanCanCanという権限管理のgemを使用し、権限ごとにModelの操作に制限をつけようとしている。 GitHub - CanCanCommunity/cancancan: Continuation of CanCan, the a…
最近はRuby on Railsで社内システムを作っています。 その中で先輩からもらったアドバイスやレビューで受けた指摘をまとめます。 new()はいらない hoge = Hoge.new() は hoge = Hoge.new でよい。 (Rubyは短く楽に書けるときは楽をするのじゃ!) is_availabl…
テストを書くならカバレッジ計測と行単位で通った・通ってないの確認ができたらいいな、と思っていたら @tmtms さんより「SimpleCov」を教えていただきました。 GitHub - colszowka/simplecov: Code coverage for Ruby 1.9+ with a powerful configuration l…
テストの待ち時間&結果確認がちょっと楽しくなるgemです。 GitHub - mattsears/nyan-cat-formatter: Nyan Cat inspired RSpec formatter! 導入手順 Gemfileに「nyan-cat-formatter」を追加 group :development, :test do # Call 'byebug' anywhere in the c…
自力で実装する心の余裕が消えたのでdeviseを使うことにしました。 もうすでにあるものはガンガン使おう!そうしよう。 インストールや設定手順は下記リンクを参照しました。 Rails 4.2 で ユーザー管理・認証 (devise) - Qiita Railsのログイン認証gemのDev…
Railsで作ったプロジェクトを開発環境で動かしていくと、ある一覧ページを表示する度にすごい量のSELECTが発行されているように見え、先輩に相談! 「N+1問題」というものを教えていただきました。 N+1問題 / Eager Loading とは - Rails Webook 解決策 以下…
先輩のアドバイスを受け、Railsのベストプラクティスに従っているかを確認できるgemを導入しました。 手順 Gemfileにrails_best_practicesを追加(今回は開発環境だけで使用する) group :development do # Access an IRB console on exception pages or by us…
railsプロジェクトを新しく作成する際に実行する「rails new」のオススメ手順を、会社の先輩に教えていただいたのでメモ。 前提 Rubyインストール済み アプリケーション名:rails-app-name 手順 railsアプリケーション用のディレクトリを作成する。 →作成し…
何も思い出せなかったので、自分のメモ用です。 こうしたほうがいいよって部分があれば教えていただきたいです。 前提 rbenvを使用している 既存のRailsプロジェクトとは違うバージョンのRailsを使用する Ruby2.3.0+Rails4.2.5を使用する 作成するアプリ名…