2014-02-21 50 views
1

我试图生成一个链接,用户点击确认他们的帐户命名的路线。我想这样的:非资源筑巢

resources :users do 
    member do 
    get 'confirm/:confirmation_code', :action => 'confirm' 
    end 
end 

我已经试过:

/users/:id/confirm/:code 

我在我的路线文件中得到这个

user_confirm_path(@user, @confirmation_code) 
confirm_user_path(@confirmation_code, @user) 

和其他许多人,但似乎无法得到正确的一个。我想我总是可以自己生成链接网址,但这似乎并不是栏杆的方式。

这是我的耙路输出:

rake routes 
Prefix Verb URI Pattern          Controller#Action 
     GET /users/:id/confirm/:confirmation_code(.:format) users#confirm 

,但忽略了我其实是在寻找

回答

1

的东西我不会给出解决方案的时候了,但我会给你(“给男人一条鱼,你喂他一天,教一个男人去钓鱼,你给他一辈子的食物”)

你可以运行下面的命令来列出所有可用的路线你的应用程序和相应的帮手:

rake routes 

在我的应用程序,有很多路线,我看不到他们一次。所以我添加| grep something只选择我需要的部分。对你来说,这将是这样的:

rake routes | grep confirm 

你最终可能会读取输出,如:

confirm_user_path GET /users/:id/confirm/:confirmation_code 

谷歌搜索 “轨4.0.2 URL帮手”第一个环节是Github的问题:https://github.com/rails/rails/issues/12751

+0

信不信由你,我已经试过了。我会更新我的问题,因为我无法在此格式化 –

+0

您可以尝试使用'confirm_user_path(user_id:@ user.id,confirmation_code:@confirmation_code)'? – MrYoshiji

+0

仍然'未定义的方法'confirm_user_path'' –