Sagen Sie, wenn ich einen Controller habe, Profil, das nur zwei Aktionen hat. Die erste ist list
, die nur die Liste der Namen anzeigen wird. Ich möchte, dass diese Namen Links sind, die Sie dann zu einer Seite führen, auf der das vollständige Profil angezeigt wird. Also brauche ich eine zweite Aktion, view
, die dann einen Parameter eingeben kann, um anzugeben, welches Profil angezeigt werden soll.Hilfe mit Rails Routen
Zum Beispiel: Ich würde auf /profile/list
zugreifen, dann, wenn ich Johns Profil anzeigen möchte, werde ich auf seinen Namen klicken, der mich zu /profile/view/john
bringen sollte. Meine Ansichtsaktion liest den John-Parameter und führt dann die entsprechenden Datenbankabfragen durch.
Welche Änderungen muss ich an routes.rb vornehmen, damit dies geschieht? Prost.
Wie ändere ich map.connect: controller /: action /: user_name ', damit ich Profil/Ansicht festcode. Weil mir andere Dinge wie/eins/zwei/drei egal sind. – alamodey
/eins/zwei/drei würden versuchen, die Aktion namens two on one_controller aufzurufen. Schienen sollten nicht in der Lage sein, dies zu finden und dies mit einer "generischen Seite nicht gefunden" zu behandeln. Wenn Sie dies wirklich fest codieren möchten, können Sie stringenter festlegen: anforderungen => {: controller =>/profile /,: action =>/view /, ..} – Gishu