我正在關注Mike Hartl的Rails教程&在創建電子郵件模板時遇到了問題。 (請注意:本教程是基於on Rails的5.0.1,而我使用Rails 5.1.1春耕提前。)Rails 5.1郵件錯誤 - 模板中的帳戶激活參數
本教程使用:activation_token & :activation_digest屬性來處理註冊的安全隱患URL和:create_activation_digest掛鉤在創建用戶模型之前設置它們的值。
這裏的郵件視圖模板:
<%= link_to "Activate", edit_account_activation_url(@user.activation_token, email: @user.email) %>
的問題似乎是在告訴梅勒使用的值:在activation_token:路由的ID領域。 (A URL定義錯誤)
,路線如下定義,從rails routes
:
edit_account_activation GET /account_activations/:id/edit(.:format) account_activations#edit
錯誤反饋:
No route matches {:action=>"edit", :controller=>"account_activations", :email=>"[email protected]", :format=>nil, :id=>nil}, possible unmatched constraints: [:id]
我試着硬編碼ID:@ user.activation_token在郵件模板,無濟於事。
這似乎是一個容易的,但我很難過,有點擔心,我忽略了從Rails 5.0.x到5.1.x的過渡中隱藏的東西。有任何想法嗎?
請檢查'@ user.activation_token'是否爲零? –