simple_captcha errors problem

mam taki problem, jak zrobić żeby podczas rejestracji, errory captchy nie wypierały errorów z authlogica.

def create if simple_captcha_valid? @user = User.new(params[:user]) if @user.save flash[:notice] = "Zarejestrowano poprawnie." redirect_to root_url else render :action => 'new' end else flash[:notice] = "Błędny kod CAPTCHA" redirect_to new_user_url end end
mając takie coś przy niepoprawnie wpisanych polach w rejestracji (login, email , hasło, potwierdzenie hasła, no i captcha) od nowa przenosi mnie na stronę rejestracji, ale nie pojawiają się errory authlogica tylko samej captchy

dzięki za odp

http://expressica.com/simple_captcha/
wykorzystaj przykład “Model Based”

Zamiast

redirect_to new_user_url

ma być

render :action => 'new'

BTW. walidację w modelu się powinno robić a nie w kontrolerze. Jak masz validates_presence_of :cośtam
w modelu tak samo własne walidacje powinieneś mieć w modelu… Wtedy będziesz miał errory w odpowiedniej tabelce a nie w hashu flash[:notice] gdzie raczej errorów się nie umieszcza.
np.

attr_accessor :captcha def validate if simple_captcha_valid? == false #ewentualnie jesli jest tam metoda simple_captcha_not_valid? #albo coś podobnego simple_captchy :) errors.add_to_base "Błędny kod CAPTCHA" end end

@fastred
no fajnie pojawiają się errory z rejestracji, ale nie z captchy i jej nie widzi, przechodzi poprawnie rejestrację z błędnie wpisanym kodem captcha
może to będzie głupie pytanie, gdzie powinienem @user.valid_with_captcha?
wpisać??

@krzyczak
mógłbys troszku jaśniej (raczkuję dopiero po railsach)

dobra już sobie poradziłem, użyłem reCaptchy, ale dzięki za pierwsze odpowiedzi

[quote=manfred]@fastred
no fajnie pojawiają się errory z rejestracji, ale nie z captchy i jej nie widzi, przechodzi poprawnie rejestrację z błędnie wpisanym kodem captcha
może to będzie głupie pytanie, gdzie powinienem @user.valid_with_captcha?
wpisać??[/quote]
Toż to właśnie post wyżej Ci napisałem :slight_smile: kod do walidacji w modelu się umieszcza… (chociaż w kontrolerze jak jest to też powinno Ci działać).