こんにちは、hachi8833です。この記事と6.でDevise Wiki日本語目次は今回で完了です。
原文更新や誤りにお気づきの方は@techrachoまでお知らせください。
もくじリンク
- 「ワークフローのカスタマイズ」
- 「認証方法のカスタマイズ」「OmniAuth」
- 「ビュー/コンテンツのカスタマイズ」「特権/認証」
- 「テスト」「特殊な設定」
- 「アプリでのその他の設定」「JavaScript」(本記事)
- 「他の認証プラグインからの移行」「アップグレード」
アプリでのその他の設定
※新しい順に並べ替えてあります。
レイアウトテンプレートにsign_in
/sign_out
/sign_up
リンクを追加する
- 6 Jun 2017 · 2 revision
- How To: Add sign_in, sign_out, and sign_up links to your layout template
ビューにsign_in
やsign_out
やsign_up
のリンクを追加する方法です。CSSもちょっぴり載っています。
コントローラでサインインする
- 2 Jan 2017 · 2 revisions
- How To: Sign in from a controller
コントローラでユーザーをサインインさせたい場合のコード例とメモです。
パスワードリセットの依頼メールを全ユーザーに通知する
- 2 Jan 2017 · 8 revisions
- How To: Mass password reset and email notification
全ユーザーにパスワードのリセットをお願いする場合のコード(パスワードのリセット自体は行わない)と、メール送信とともに全ユーザーのパスワードをリセットするコードの2種類が記載されています。後者は影響が大きいので、パスワードを盗まれた場合などの緊急時向けです。
UserモデルをCRUDベースのインターフェースで管理する
- 15 Aug 2016 · 3 revisions
- How To: Manage users through a CRUD interface
Userモデルを普通のCRUD画面で管理する場合の注意点が記載されています。ルーティングの順序の注意と、:password
が空の場合にparamsから削除する必要についてです。
カスタムのsign_in
フォームをアプリのすべてのページに表示する
- 9 Oct 2015 · 12 revisions
- How To: Display a custom sign_in form anywhere in your app
サンプルのビューにはHamlとERBの2種類があります。#form_for
の最初のパラメータでリソース名を指定することがRailsで非推奨になっているためにclient_side_validations gemをDeviseと併用できない場合の回避方法がメモされています。
ユーザーを認証情報で検索する
- 25 Jul 2014 · 4 revisions
- How To: Find a user when you have their credentials
#find_for_authentication
を使う方法が紹介されています。confirmableモジュールを使っている状態で、確認の終わっていないユーザーを認証したくない場合は、#active_for_authentication?
も呼ぶ必要があります。
Deviseをモバイル/iPhone/iPadなどのデバイスで使えるようにする(Railsのみ)
- 3 Nov 2013 · 3 revisions
- How To: Make Devise work with other formats like mobile, iPhone and iPad Rails specific"
application_controller.rbにモバイル用のbefore_filter
を追加する方法です。OAUTH for Facebookを使っている場合はFacebookのモバイル認証パスを使う必要があります(詳細へのリンクは切れています)。
コントローラで使えるDevise生成メソッドやフィルタ一覧
- 14 Dec 2011 · 4 revisions
- How To: Use Devise generated method and filters for controllers
rails generate devise モデル名
で生成するとコントローラで使えるようになるメソッドやフィルタの一覧です。
JavaScript
DeviseをBackboneJSモデルで使う
- 24 Oct 2012 · 2 revisions
- How To: Use with BackboneJS models
DeviseをBackboneJSで使う場合の注意点がメモされています。Deviseのupdate
とdelete
のルーティングはBackboneJSのと異なるため、モデルの修正が必要です。
補足
- 原文ではsign inとlog in、sign outとlog outがそれぞれ同じ意味で使われています。訳文では、紛らわしくなる場合を除き、原則として原文に沿ったカタカナを使用します。
- 同じ手順が複数のカテゴリに含まれていることもあります(原文に従っています)
- 原文が更新されていることにお気づきの場合は、ぜひ@techrachoまでお知らせください。更新いたします。
関連記事(Devise)
- Rails4: 古いdeviseのパスワードを新しいdeviseで使う方法
- Rails 3.1.0.rc8にしようとしたらdeviseが違うバージョンのbcryptに依存していてアップデートできない
- [Rails 3] deviseで使うモデルにfind_by_で始まる名前のscopeを定義するとrake db:migrate:resetが通らない
- [Rails 3] 失敗しないmigrationを書こう
- [Rails 3] Appサーバが複数だとdevise_openid_authenticatableで認証できない