Active Admin rails,现有操作的新按钮

时间:2017-02-27 09:48:03

标签: ruby-on-rails ruby devise activeadmin actionmailer

我尝试在Active Admin rails上添加新按钮(重新发送电子邮件)到现有(发送电子邮件)方法/路由。我已经在具有MVC架构的普通轨道上完成了这些任务。我曾经在html.erb文件中添加所需的路径路径。我发现很难在Active Admin上实现相同的功能,因为它没有MVC外观。 在 routes.rb 文件中我有

的routes.rb

    Rails.application.routes.draw do
       mount Bootsy::Engine => '/bootsy', as: 'bootsy'
       devise_for :admin_users, ActiveAdmin::Devise.config
       ActiveAdmin.routes(self)
       devise_for :users,controllers: {registrations: 'users/registrations',sessions: 'users/sessions',confirmations: 'users/confirmations'}
    end

此处confirmations: 'users/confirmations'用于向用户发送电子邮件验证邮件。这很好。有些用户忘记查看他们的电子邮件。所以我试图创建一个"重新发送电子邮件" ActiveAdmin文件上的按钮,在提交时再次发送验证电子邮件。 我应该设置什么路径才能再次发送邮件。我是active-admin rails的新手。非常感谢您的帮助。

User.rb

ActiveAdmin.register User, :as => 'User' do
  action_item only: :show do
    link_to('Resend Email', )
  end
end

user_mailer.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

0 个答案:

没有答案