Ruby 2.0.2, Rails 4.0.3, Sihirbaz 0.8.5Rails'te bir yönlendirmenin veya oluşturmanın önceden verilmiş olup olmadığını kontrol etmek mümkün mü?
Kodumda bir yönlendirme yayınlamaya çalıştım, yalnızca bir yönlendirme veya oluşturma işleminin zaten yapılmış olduğu hata iletisini aldım. Bu durumda, geri dönmek için mutluyum. Ancak, yöntem başka herhangi bir nedenle çağrılırsa, bir yönlendirme veya işlemin yayınlanıp yayınlanmadığını kontrol etmeyi isterim. Kod, Sorcery'e dayanan kimlik doğrulamasıdır. Uygulama kontrolörü olarak
, ben:def not_authenticated
redirect_to login_url # , :alert => "First log in to view this page."
end
Bu örnein kontrol biter, şöyle:
kurtarmadadef current_user
@current_user ||= @view.current_user unless @view.blank?
begin
@current_user ||= Associate.find(session[:user_id]) unless session[:user_id].blank?
rescue ActiveRecord::RecordNotFound => e
return
end
current_user = @current_user
end
, ben olsun veya olmasın bir tespit istiyorum yönlendirme veya oluşturma zaten gerçekleşmişti, böylece eğer olmasa da login_url için redirect_. Bu, elbette ki, bunun farklı bir yöntemden çağrıldığı anlamına gelir. Teşekkürler. render
veya redirect_to
zaten denilen edilmişse
Giriş sayfanızda "current_user" var mı? Öyleyse neden? – Substantial
@Substantial Hayır, öyle değil. İz, burada yer alandan başka herhangi bir kodumu göstermedi. Büyücülük current_user'yi kontrol ediyordu. Bu geçici bir durum ve izleri kaydetmedim, bundan daha fazla şeyim yok. –