在rails中创建RESTful链接

时间:2012-09-23 19:51:15

标签: ruby-on-rails

我有一个名为classroom的控制器和一个名为courses的方法。 courses需要学生参数,params[:student]

<%= link_to track_name, classroom_courses_path(:student => "JoeBloggs") %>

这将生成链接/classroom/courses?student=JoeBloggs

但是我需要链接:

/classroom/courses/JoeBloggs

如何修改我的代码才能实现这一目标?

1 个答案:

答案 0 :(得分:0)

您可以通过路线来完成:

get 'classroom/courses/:student' => 'classroom#cources', :as => 'get_student_cources'

根据您放置此路线的位置,您的_path将有所不同,因此您应rake routes | grep get_student_cources找出确切的路径名称。然后在您的应用中使用它:

<%= link_to track_name, get_student_cources_path("JoeBloggs".parameterize) %>

注意:您应该参数化学生姓名以逃避可能会破坏网址的字符。