In 2.3 gibt esUnterschiede betwen 2.3 und 4.2.6 Routing
map.connect ':controller/:action/:id'
ich zum Beispiel "/ resource/bearbeiten" zuzugreifen versucht, es hat kein Problem Controller Ressource und Aktion bearbeiten zu finden.
In 4.2, verwende ich
get ':controller/:action/:id'
Die "/ resource/bearbeiten" funktioniert nicht. Ich schätze, es liegt daran, dass es keine gibt: ID?
Wenn ich
get ':controller/:action(/:id)'
ändern, die macht: id optional, dann funktioniert alles.
Also meine Fragen sind:
1) ist meine Vermutung richtig? Was ist: für 2.3 müssen Sie nicht optional definieren, und es wird optional sein, aber für 4.2 müssen Sie optional definieren, um es optional zu machen.
2) Für 2.3, einmal
map.connect ':controller/:action/:id'
definiert ist, ist es für alle definierten GET/POST/PATCH/etc DELETE? Für 4.2 muss ich folgendes definieren?
get ':controller/:action(/:id)'
post ':controller/:action(/:id)'
usw. eins nach dem anderen?
- Gibt es weitere große Unterschiede, die Sie sich vorstellen können?
Danke.
Sie können viele Informationen hier finden: http://guides.rubyonrails.org/routing.html – IngoAlbers
Aber sie sagen Ihnen einfach nicht den Unterschied, oder weisen Sie darauf hin, welche Codes gebrochen sind. Ich mache Migration von 2.3 auf 4. Ich muss genau wissen, was sich geändert hat. Nun, was ich tun kann, ist nur zu sehen, was beim Testen kaputt ist, und versuche zu raten, ob es daran liegt, dass sich die Regel geändert hat. – user534498