Ich habe folgendes Problem, ich generiere eine URL, mit dem Parameter
code, hier ein Beispiel:
url_for(:action => ‘verify’, :id => @user, :code => @user.code)
Der code ist eine “ein string mit user daten”.crypt(random_string), es
kann also ein “.”-Zeichen da mit drinnen sein.
In meinen Routes habe ich jetzt drinnen:
routes.verify ‘/verify/:id/:code.:format’, :controller => ‘account’,
:action => ‘verify’
Jetzt kann es natuerlich sein, dass ich einen Pfad bekomme, wie:
/verify/111/qQ.cl8CQlPjrw.html
Dann findet das Routing nicht, was es tun soll, weil der Punkt als
Trenner vorhanden ist.
In meinen Routes habe ich jetzt drinnen:
routes.verify ‘/verify/:id/:code.:format’, :controller => ‘account’,
:action => ‘verify’
Jetzt kann es natuerlich sein, dass ich einen Pfad bekomme, wie:
/verify/111/qQ.cl8CQlPjrw.html
Dann findet das Routing nicht, was es tun soll, weil der Punkt als
Trenner vorhanden ist.
Wenn Du an der Stelle auf die “schöne” URL verzichten kannst, lass
vielleicht einfach den :code-Parameter in den Routes weg. Dann sollte
die generierte URL die code-Daten als einfachen Query-Parameter
enthalten, also z.B. verify/111.html?code=qQ.cl8CQlPjrw. Hier dürfte der
Punkt keine Probleme machen.
Viele
Grüße,Sebastian
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.