Closed Kassy0220 closed 1 month ago
以下のGemを利用すれば、DeviseでGitHub認証を行う事が可能。
実装の概要について
OmniAuthでログイン状態を保存する方法。
パラメーターを渡す方法
GitHubから取得した情報のなかで、Memberモデルに以下の値を保存させる様にしようと考えている。
nickname
: ユーザーを一意に識別できる名前image
: ユーザーの画像を返すURLただし、一つ懸念がある。
議事録にユーザー名を表示する際、次の様な形でMarkdownのリンクを作成する。
[@Kassy0220](https://github.com/Kassy0220)
GitHubアカウントのname
とnickname
が違う場合は、次の様なリンクが作成されていることを確認できた。
(name
とは設定から変更できる名前のこと。)
[@goruchan](https://github.com/goruchanchan)
(@name
としている場合)[@dowdiness](https://github.com/dowdiness)
(@nickname
としている場合)そこで、議事録のユーザー名のリンクはどの様な形で保存したら良いか、駒形さん町田さんに確認する。
自作サービス進捗報告会で確認したところ、リンクのユーザー名はnickname
を表示することになった。
GitHub認証の目処が立ったため、このIssueをcloseします。
Devise + omniauth でGitHub認証を実装する場合、複数モデルに対応することができなかった。 (DeviseのWikiに複数モデルの対応方法が記述してあったが、上手くいかなかった。詳しくはこちらを参照)
そこで、Devise以外の方法でGitHub認証を実装する方法を調査する(別のgemの利用または自前で実装)。
Devise + omniauthでGitHub認証を実装しつつ、複数モデル(Member
とAdmin
)でログインすることができた。
DeviseのGitHub認証でも複数モデルに対応することができたため、このままDeviseで実装を行う。
認証方法は改めてDeviseを利用することにしたので、このIssueをクローズします。
議事録編集ページを開く際にGitHub認証を行うようにしたい。 GitHub認証を行う方法について調べる。