我想在我的应用程序中有一个表单,登录的用户可以输入他们的朋友的电子邮件地址,单击发送,然后它会发送一封自动电子邮件到他们输入表单的电子邮件地址。这是我到目前为止。当我单击按钮将您带到窗体时,我会得到单元化的常量,所以我不知道还有哪些功能无法工作。如何以电子邮件的方式向电子邮件联系人发送电子邮件?
invitations_controller.rb
class InvitationsController < ApplicationController
def new
@invitation = Invitation.new
end
def create
@invitation = Invitation.new(params[:invitation])
@invitation.invited_by = current_user.invitation_token # set the sender to the current user
if @invitation.save
Mailer.invitation(@invitation, new_user_path(:invite_token => @invitation.invited_by)).deliver #send the invite data to our mailer to deliver the email
else
flash.now[:notice] = "Something went wrong"
redirect_to root_url
end
end
end
mailer.rb
class Mailer < ActionMailer::Base
default from: "[email protected]"
def invitation(invitation, signup_url)
subject 'Invitation'
recipients @recipient_email
from '[email protected]'
body :invitation => invitation, :signup_url => signup_url
invitation.update_attribute(:sent_at, Time.now)
end
end
invitation.html.erb
Mailer#invitation
You are invited to join our beta!
<%= signup_url(@invitation.invited_by) %>
new.html.erb(邀请形式)
<%= simple_form_for @invitation, :url => new_invitation_path do |f| %>
<%= f.hidden_field :invitation_token, :value => @invitation.invited_by %>
<%= f.label :email %>
<%= f.email_field :email %>
<%= f.submit 'Send' %>
<% end %>
我甚至无法访问邀请表单,因为我得到了未初始化的常量错误。所以我知道它超出了这个范围。请帮助
哪个常数未初始化? – Mischa
未初始化的常量InvitationsController :: Invitation – user3443619
你有'Invitation'模型吗? – ouranos