amatsukixブログ

【Rails6】devise gemを使用するときに役立った記事

devise gemとは

devise gemは認証系に必要な機能を簡単に実装できるライブラリです。

サインアップやサインインだけでなくパスワード再設定したりアカウント登録用メール

を送信したりできるようです。

 

(簡単に実装できるけど、諸々機能を追加したり修正したりするのには慣れるまで時間がかかる。。。)

github.com

 

 

Wikiは結構充実していて、見れば大抵のことは出来そうです。

 

github.com

 

devise gemの基本

devise を開発初期に実装するために見た記事が下記の2つです。

これだけでログイン機能を実装できました。

qiita.com

qiita.com

 

deviseの使用可能なメソッド

コントローラで使用したメソッドはこちら

qiita.com

 

deviseのテストをしたいとき

 test/test_helper.rb にヘルパーを追加することでテストで `login_as` メソッドを使用できるようになりました。

 

medium.com

【VSCode】rubocopの警告をエディター上に表示させる

rubocopとは

Rubyでよくない書き方をしていたときに、その部分に警告を出してくれるツールです。

静的コード解析ツールと言ったりします。

 

rubocopのおかげで書き方を統一できたりコードを見やすくできたり利点が盛りだくさんです。

 

よくない書き方の例はこちらのgithubで確認できます。

github.com

 

VSCodeでrubocopを使いたい!

VSCodeRubyを書くならこれ!

みたいなRuby拡張機能があったのですでに入れていて、この拡張機能のおかげでrubocopは使えていました!

marketplace.visualstudio.com

 

...これで終わりならいいんですが、デフォルトのrubocopだとなんせコードの制約が厳しい。

 

ちょこっと制限をゆるくしたいなぁなんて考えて設定方法を調べてましたが見つかりませんでした。

 

VSCoderuby-rubocopをインストール

Ruby拡張機能では無理そうだったんでruby-rubocop拡張機能をインストールすることにしました。

こちらはVSCodeでrubocopを使用するための拡張機能です。

marketplace.visualstudio.com

 

インストールはVSCodeの下記画像の場所からいけます。

検索窓に ruby って打ったら出てくると思います。

 

f:id:amatsukixprog:20191012235525j:plain

rubocopの検索結果



rubocopの詳細設定

rubocopの制限をゆるめるためには .rubocop.yml というファイルを設定してあげる必要があります。

rubocop-conf

rubocopの設定

 

command + , で設定を開きます。(Macの場合)

拡張機能 があるのでそのなかの

Ruby-Rubocop configuration を確認しましょう。

 

Config File Path とあり、こちらで.rubocop.ymlファイルを指定できます。

基本的にはプロジェクトのルートディレクトリに置いておくようです。

/Users/username/project/.rubocop.yml

みたいな感じで書いておきます。

 

あと、On Saveをチェックすると保存時にrubocopが走るようになります。

 

.rubocop.ymlを作成 

Config File Path に指定したパスと同じになるように .rubocop.yml という名前のファイルを作成します。

 

作成したら下記のコードをコピペして保存します。

これは日本語のコメント

を許可するためのコードです。

# 日本語のコメントを許可する
Style/AsciiComments:
  Enabledfalse

 

これで制限を緩めるための作業は終わりです!

 

.rubocop.ymlの参考設定

いくつか設定例を探してみました。

そのまま使用しても必要そうな部分をピックして使用するのもよいと思います。

 

僕の使っている .rubocop.yml · GitHub


 

 

qiita.com