persist the same url even if validation fails

Hi
   I could solve it by modifying routes like

  map.connect '/staff_registration/:code', :controller => :staff,
:action => :registration_completion,:conditions => { :method => :put }
  map.staff_registration '/staff_registration/:code', :controller =>
'staff', :action => 'registration'

And modified action registration_completion like
def registration_completion
    @user = User.find_by_perishable_token!(params[:code])
    @staff = @user.staff