Devise Gem

Devise нь Rails дээр суурилсан уян хатан authentication шийдлийн нэг юм.

  • Rack дээр суурилсан
  • Rails engine дээр суурилсан бүрэн MVC шийдэл юм
  • Нэг цагт олон моделиуд зэрэг хандалт хийх боломжтой

Инфо

Devise ѳргѳн ашиглагддаг gem болохоор internet-ээс хайхад хүссэн мэдээллээ авах боломжтой. Доорх линкээр орон мэдээлэл авах боломжтой: Devise

Эхлэл

Devise 4.0 нь Rails 4.2 болон 4.2 дээшээ загваруудыг дэмжин ажиллана. Gemfile дотор хуулж ѳгѳх:

gem 'devise'

Хуулсан бол bundle install командыг ашиглан суулгана:

bundle install

Gemfile дотроо хуулан bundle install хийсэн бол generate хийн суулгах хэрэгтэй:

rails generate devise:install

Generate хийх явцад тохиргооны хэсэг гарч ирэх ба тэдгээрийг зааврын дагуу суулгах шаардлагатай. Тохиргоог хийж дууссан бол generate ашиглан Devise-д модель үүсгэж ѳгнѳ:

rails generate devise MODEL

MODEL - ын оронд апплкейшны хэрэглэгчийн классын нэрийг бичиж ѳгнѳ. Уг тохиолдолд User эсвэл Admin байж болно. Модель үүсгэсэн бол rake db:migrate хийж ѳгнѳ

rake db:migrate

Helper

Devise нь controller болон views дотор helper үүсгэж ѳгсѳн байгаа. Controller хэсэгт user authentication оруулж ѳгѳх бол before_action (тухайн моделийг User гэж үзвэл)

before_action :authenticate_user!

Devise model - т User - ээс ѳѳр утга оноож ѳгсѳн бол “_user” оронд “_ѳѳрийн утга”аа онож ѳгѳх зарчмаар явна.

Хэрэглэгч бүртгүүлсэн болохыг шалгах helper:

user_signed_in?

Одоогоор нэвтрэн орсон хэрэглэгч:

current_user

Session рүү энэ хүрээллээр нэвтрэх боломжтой:

user_session