0
經過如此多的搜索之後,我終於找到了一種爲ActiveAdmin默認模板添加新按鈕的方法。 以下是我User.rb文件,其中我加入一個新的按鈕將現有路線添加到ActiveAdmin導軌上的新按鈕
action_item only: :show do
link_to "Resend Email"
end
目前,它的路由點擊時顯示的動作。但我想路由到UserMailer#confirmation_instructions
的routes.rb
Rails.application.routes.draw do
ActiveAdmin.routes(self)
devise_for :users,controllers: {registrations: 'users/registrations',sessions: 'users/sessions',confirmations: 'users/confirmations'}
end
Usermailer.rb
def confirmation_instructions(record, token, opts={})
@system_email = SystemEmail.find_by(title: 'Email Verification')
@subject = @system_email.try(:subject).to_s
@subject = "Email Verification" if @subject.blank?
opts = {subject: @subject}
@token = token
devise_mail(record, :confirmation_instructions, opts)
end
我怎樣才能可以路由到UserMailer#confirmation_instructions
?這個AI在正常的MVC架構上完成了這些事情。但是這真的是在吃我的頭。有人可以告訴我該怎麼做到這一點?
我想你的解決方案,它正在處理'聯繫:: UsersController#resend_email'選擇用戶並最終給錯誤'未定義的方法'令牌」的User' @Andrey Deineko。 – user3576036
@ user3576036認真嗎?男人,這是一個模型,你應該將正確的參數傳遞給'UserMailer.confirmation_instructions' - 我應該如何知道他們應該是什麼? :) –
我稍後通過了我爲'def confirmation_instruction(record,token,opts = {})'傳遞的相同參數。它沒有工作。我認爲這是最接近的解決方案。這對我來說確實是新的。只要告訴我應該爲問題添加更多的內容,以便你知道應該是什麼論點。 – user3576036