Önceki projelerde bu işlem için Devise’ın SessionsController’ı (Devise::SessionsController) extend ediyordum. Ancak modele ufak bir fonksiyon ekleyerek bu işlemi gerçekleştirebiliyoruz. Devise fonksiyon ismine bakarak otomatik olarak bu kontrolü yapmakta. Varsayalım ki User adında modelimiz mevcut ve bu modelimizde is_active field’ı boolean olarak yer alıyor. Yapmamız gereken app/models/user.rb dosyamıza aşağıdaki kodları eklemek.
1 2 3 4 5 6 7 |
def active_for_authentication? super && self.is_active end def inactive_message "Hesabınız aktif değil" end |
Bir cevap yazın