2016-04-06 29 views
-2

Raylar uygulamasına ve basit bir giriş komut dosyası yazdım.Rails kullanıcı girişi, sadece sayfalara erişim garantisi

Girilen parolanın, veritabanında karma olanın aynısı olup olmadığını kontrol eder.

Sonra kullanıcı kimliğini Session'a kaydediyorum.

Şimdi sayfalar yalnızca vissible ya da sadece bir kullanıcı loged ise erişim olabilir .. ben bunu başarmak yapabilirim nasıl

bunu istiyorum? Devise gibi taşlar dakika konuda benim için yapabileceği ne zaman yardım

tüm
+0

Neden yayından olarak nedir? – Felix

cevap

5

İlk için

teşekkürler, bu kendim yapmazdım.

gerçekten bu kendiniz yapmak istiyorsunuz, ben her eylemden önce aranmak sizin ApplicationController bir user_logged_in! yöntemi yapacağını rağmen (eğer before_action ile kontrol edilmelidir hangi eylem seçebilirsiniz):

class ApplicationController < BaseController 
    before_action :user_logged_in! 

    protected 

    def user_logged_in! 
    # Logic that checks if the user is actually logged in (check in session, etc). 

    # If not logged in, redirect the user to the root page with a flash message. 
    end 
end 
kullanıcı kimliğinin doğrulanması gerekmez eylemler/kontrolörler için

, sen skip_before_action kullanabilirsiniz:

class DomainsController < BaseController 
    skip_before_action :user_logged_in!, only: [:index, :show] 
end 
+0

evet ama bu çözüm değil. Giriş yapamadığımda, domain/users/edit ... ama bu sadece bir kullanıcı giriş yaptıktan sonra mümkün olabilir .. – Felix

+1

Kesinlikle. Sonra, 'domains_controller' örneğinde, 'skip_before_action' kullanarak bu doğrulamayı atlayabilirsiniz. Cevabımı daha net hale getirmek için düzenleyeceğim. – born4new

+0

ve cihazla ilgili ipucu için teşekkürler. Gem'i tanıyordum. Ama sadece en az işleve ihtiyacım var ve bunu yapmak istiyorum "benim canım";) – Felix

İlgili konular