Ruby on rails 有在rails中发送电子邮件的表单

Ruby on rails 有在rails中发送电子邮件的表单,ruby-on-rails,forms,Ruby On Rails,Forms,我是rails新手,想知道是否有办法在views文件夹中创建表单,以便发送电子邮件。 表格需要输入以下内容: 电子邮件地址;主体;信息 然后基本上你按下send,它就会发送电子邮件,表单就是你基本的Rails视图和控制器操作,用于发送电子邮件本身 然而,如果您正在寻找一些真正基本的东西,仅仅是从表单发送电子邮件,那么有很多现成的解决方案不需要使用Rails来实现。我用 表单将只是基本的Rails视图和控制器操作,用于发送电子邮件本身 然而,如果您正在寻找一些真正基本的东西,仅仅是从表单发送电子邮

我是rails新手,想知道是否有办法在views文件夹中创建表单,以便发送电子邮件。 表格需要输入以下内容: 电子邮件地址;主体;信息


然后基本上你按下send,它就会发送电子邮件,表单就是你基本的Rails视图和控制器操作,用于发送电子邮件本身


然而,如果您正在寻找一些真正基本的东西,仅仅是从表单发送电子邮件,那么有很多现成的解决方案不需要使用Rails来实现。我用

表单将只是基本的Rails视图和控制器操作,用于发送电子邮件本身

然而,如果您正在寻找一些真正基本的东西,仅仅是从表单发送电子邮件,那么有很多现成的解决方案不需要使用Rails来实现。我用

您可以使用以下方法进行操作:

 Mailer Form

<%= form_tag '/path' do%>
Email : </br><%= text_field_tag 'email', ''%></br>
subject: </br><%= text_field_tag 'subject', ''%></br>
Body:<%= text_area_tag 'body', ''%>
<%= submit_tag "submit",:value => "submit"%>
<%end%>

For Controller

 def path 
   data = params[:body]
   subject=params[:subject]
   user = params[:email]
   Mailer.mail_method(data,user,subject).deliver
 end

For Mailer

  def mail_method(data,email,subject)
    @body=data
    mail(to: email, subject: subject)
  end
Mailer表单
电邮:

主题:

正文: “提交”%> 控制器 def路径 数据=参数[:正文] 主题=参数[:主题] user=params[:电子邮件] 邮件方法(数据、用户、主题)。传递 结束 给梅勒 def mail_方法(数据、电子邮件、主题) @body=数据 邮件(收件人:电子邮件,主题:主题) 结束
梅勒视图

  <%=@body%>

您可以使用以下方法进行操作:

 Mailer Form

<%= form_tag '/path' do%>
Email : </br><%= text_field_tag 'email', ''%></br>
subject: </br><%= text_field_tag 'subject', ''%></br>
Body:<%= text_area_tag 'body', ''%>
<%= submit_tag "submit",:value => "submit"%>
<%end%>

For Controller

 def path 
   data = params[:body]
   subject=params[:subject]
   user = params[:email]
   Mailer.mail_method(data,user,subject).deliver
 end

For Mailer

  def mail_method(data,email,subject)
    @body=data
    mail(to: email, subject: subject)
  end
Mailer表单
电邮:

主题:

正文: “提交”%> 控制器 def路径 数据=参数[:正文] 主题=参数[:主题] user=params[:电子邮件] 邮件方法(数据、用户、主题)。传递 结束 给梅勒 def mail_方法(数据、电子邮件、主题) @body=数据 邮件(收件人:电子邮件,主题:主题) 结束
梅勒视图

  <%=@body%>


这看起来很好,很整洁,但是“给邮递员”的位置在哪里呢?它是给你发送邮件的邮递员的。示例类UserMailer无路由匹配[POST]“/path”错误,我需要在路由中放置一些内容吗?是的,您需要为路径操作定义一个POST路由。您的电子邮件地址放在哪里?这看起来很好,很整洁,但是“for Mailer”在哪里bit go?用于发送邮件的邮递员。示例类UserMailer无路由匹配[POST]“/path”错误,我需要在路由中添加一些内容吗?是的,你需要为你的path操作定义一个POST路由。你把你的电子邮件地址放在哪里?我想我在这里有点太多了,但是我不知道我怎么把formRails邮件程序放在哪里有点奇怪,特别是如果你是Rails新手的话。它与电子邮件的发送完全相关,与其他一切都不相关。因此,表单将只是另一个视图,其提交操作将转到另一个控制器操作。但是,一旦进入控制器,就可以启动ActionMailer方法。查看Rails指南的第一个链接,它真的可以引导你做什么。查看www.enformed.io,它有一些有趣的功能,比如在提交后设置重定向和电子邮件定制。我想我在这里有点笨,但我不知道我如何将formRails Mailer放在哪里有点奇怪,特别是如果您是Rails新手。它与电子邮件的发送完全相关,与其他一切都不相关。因此,表单将只是另一个视图,其提交操作将转到另一个控制器操作。但是,一旦进入控制器,就可以启动ActionMailer方法。查看Rails指南的第一个链接,它可以指导您做什么。查看www.enformed.io,它有一些有趣的功能,比如在提交后设置重定向和电子邮件定制。