Okul tabanlı uygulamada ciddi bir sorun yaşıyorum, Yönetici, Öğrenci ve Öğretmen için rol tabanlı sistem gibi kurmak istiyorum. Kimlik doğrulama için yetki kullanmış ve yetkilendirme için kanister kullanmıştım. Mesele şu ki, başlamak için yer yok. Kullanıcı modelini ekledim ve bir alan rolü ekledim. Rol tabanlı yetkilendirme için this'u takip ettim. Çalışıyor, ancak açılır menüde bir Öğretmen rolü seçerek Öğrenci kimlik bilgisiyle oturum açmaya çalıştığımda, hiçbir zaman rolleri doğrulamıyor (asla sizin için böyle bir şey reddedildiğini söylemiyor). Bir öğrenci olarak giriş yapar. Giriş formunda seçilen rolleri doğrulamak istiyorum.login Doğrulama yoluyla roller doğrulanmadı
Şu an için kullanıcı modelini model modeli olarak kullanıyorum. ve , Öğrenci Modeline, Öğretmen Modeline ve Yönetici Modeline sahiptir. ve tüm Öğrenci, Öğretmen ve yönetici Kullanıcıya aittir. Benim vasiyet kaydı görünümünde
<%= f.collection_select(:role, User::ROLES, :to_s, lambda{|i| i.to_s.humanize}) %>
Yoksa Kullanıcı modeline
class User < ActiveRecord::Base
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable and :omniauthable
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
has_many :admins
has_many :students
has_many :teachers
ROLES = %i[admin teacher student]
end
yılında
Bütün Öğrenci, Öğretmen ve Yönetici için vasiyetle modelini kullanmak istiyorsunuz? eğer evet bunu nasıl tamamlarım? Herhangi bir yardım veya öneriniz size yardımcı olur. Şimdiden teşekkürler.