【发布时间】:2015-05-27 02:44:08
【问题描述】:
下面是我基本上只是模仿的代码。一个专业的网络开发人员制作了这个网站,所以我只是按照他们是怎么做的。但是,由于某种原因,数据没有在电子邮件中发送。但是,电子邮件确实发送了。
控制器文件
def createproject
@title = "Create Your Project"
@txtname = params[:txtname]
@txtemail = params[:txtemail]
@txtdates = params[:txtdates]
@tname = params[:tname]
@txtleader = params[:txtleader]
@txttree = params[:txttree]
@txtsolar = params[:txtsolar]
@txtwater = params[:txtwater]
@txtgoats = params[:txtgoats]
@txtkids = params[:txtkids]
@txthouse = params[:txthouse]
@txtroof = params[:txtroof]
@txtlatrine = params[:txtlatrine]
@txtbuild = params[:txtbuild]
if !@txtname.nil? && @txtname != ''
@isvalid = true
@data = {
:txtname => @txtname,
:txtemail => @txtemail,
:txtdates => @txtdates,
:tname => @tname,
:txtleader => @txtleader,
:txttree => @txttree,
:txtsolar => @txtsolar,
:txtwater => @txtwater,
:txtgoats => @txtgoats,
:txtkids => @txtkids,
:txthouse => @txthouse,
:txtroof => @txtroof,
:txtlatrine => @txtlatrine,
:txtbuild => @txtbuild
}
end
if @isvalid
ContactUsMailer.createproject_mail(@data).deliver
respond_to do |format|
format.html {render :layout=>"homeLayout"}
end
else
respond_to do |format|
format.html {render :layout=>"homeLayout"}
end
end
end
邮件文件
def createproject_mail(data)
@data = data
@txtname = @data[:txtname]
@txtemail = @data[:txtemail]
@txtdates = @data[:txtdates]
@tname = @data[:tname]
@txtleader = @data[:txtleader]
@txttree = @data[:txttree]
@txtsolar = @data[:txtsolar]
@txtwater = @data[:txtwater]
@txtgoats = @data[:txtgoats]
@txtkids = @data[:txtkids]
@txthouse = @data[:txthouse]
@txtroof = @data[:txtroof]
@txtlatrine = @data[:txtlatrine]
@txtbuild = @data[:txtbuild]
mail(:to => "jacob@fusionbible.com", :subject => "TEST", :from => "no-reply@mohhaiti.org")
end
【问题讨论】:
-
@isvalid 的值是否为真?
-
@neo isvalid 为真,因为此代码发送电子邮件但没有数据。
-
老实说,我不确定自己做错了什么。有什么想法吗?
-
@jworth 你能分享你的电子邮件模板吗?
-
终于弄清楚我做错了什么。它与那些文件无关。有一个 html 文件,其中包含应该在电子邮件中发送的所有值。该文件名为 createproject_mail.html.erb.html。我必须解决命名问题。
标签: html ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4