Rails: 如何在Rails中實(shí)現(xiàn)高效的登錄功能
Rails: 如何在Rails中實(shí)現(xiàn)高效的登錄功能
本文將介紹如何在Rails中使用Devise gem
庫(kù)快速、簡(jiǎn)單地實(shí)現(xiàn)登錄功能,同時(shí)提供一些關(guān)鍵技巧和最佳實(shí)踐。
簡(jiǎn)介
版本信息

步驟1:將Devise添加到Gemfile中
下一步是將Devise
添加到Gemfile
。Gemfile
是一個(gè)指定應(yīng)用程序依賴(lài)項(xiàng)的文件。 在文本編輯器中打開(kāi)Gemfile
并添加以下行:
保存Gemfile
,執(zhí)行如下命令安裝。
步驟2:運(yùn)行設(shè)計(jì)生成器
現(xiàn)在我們已經(jīng)安裝了Devise
,我們需要運(yùn)行它的生成器來(lái)生成必要的文件。 運(yùn)行generator
命令:
這將生成一個(gè)初始化器文件config/initializers/devise.rb
。 我們可以使用它來(lái)配置Devise
。 它還將顯示一些關(guān)于我們下一步需要做什么的指示。
步驟3:生成設(shè)計(jì)模型
要使用Devise
,我們需要為它生成一個(gè)模型。 運(yùn)行如下命令生成User
模型:
這將生成一個(gè)具有身份驗(yàn)證所需屬性的User
模型。 它還將生成一個(gè)遷移文件,我們需要運(yùn)行該文件來(lái)創(chuàng)建必要的數(shù)據(jù)庫(kù)表:
這將在數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)users表。
步驟4:更新路由
現(xiàn)在我們有了模型和遷移,我們需要更新我們的路由以包括設(shè)計(jì)路由。 打開(kāi)config/routes
。 在文本編輯器中添加Rb文件,并添加以下行:
這將為Devise
生成所有必要的路徑。 可以使用如下命令查看可用路由:
步驟5:添加設(shè)計(jì)視圖
默認(rèn)情況下,Devise
提供了一組可用于身份驗(yàn)證的視圖。 要生成這些視圖,運(yùn)行以下命令:
這將在app/views/devise
目錄中生成所有必要的身份驗(yàn)證視圖。
步驟6:更新應(yīng)用程序控制器
最后一步是更新我們的ApplicationController
以包括輔助方法。 打開(kāi)app/controllers/application_controller.rb
。 在文本編輯器中添加Rb文件,并添加以下行:
這將確保所有控制器在被訪(fǎng)問(wèn)之前都需要身份驗(yàn)證。
回顧
總之,將Devise
集成到Ruby on Rails應(yīng)用程序中是一個(gè)簡(jiǎn)單而直接的過(guò)程。通過(guò)執(zhí)行這些步驟,您可以立即在Rails應(yīng)用程序中啟動(dòng)并運(yùn)行用戶(hù)身份驗(yàn)證。Devise
是一個(gè)功能強(qiáng)大的寶石,提供了許多開(kāi)箱即用的特性,使其成為Rails應(yīng)用程序中用戶(hù)身份驗(yàn)證的熱門(mén)選擇。
Reference
https://makingsenseofrails.dev/how-to-set-up-devise-in-rails-7-72626ead7e0b