我有一条非资源路由,在路由中使用SHA令牌。这是我的routes.rb文件:
match 'permissions/confirm/:token' => 'permissions#confirm'
我可以访问生成的路由,但我不知道传递给link_to帮助器的内容。
以下是我正在使用的link_to,它不起作用:
<%= link_to "Give permission", confirm_permission_path(:token => @permission.token) %>
思考?
答案 0 :(得分:12)
将:as
键添加到您的路线,例如match 'permissions/confirm/:token' => 'permissions#confirm', :as => :confirm_permissions
然后<%= link_to "Give permission", confirm_permissions_path(:token => @permission.token) %>
答案 1 :(得分:5)
您始终可以使用rake routes
来确定路径的名称。我一直仔细检查那个rake任务的输出,以确保我使用正确的restful或非restful路径。