2016-04-15 25 views
0

我是新來的rails,想知道是否有方法在視圖文件夾中創建表單,以便我可以發送電子郵件。 表單需要輸入: 電子郵件地址;主題;信息。有一個用於發送電子郵件的表單

然後基本上你按下發送和發送電子郵件

回答

1

的形式也只是你的基本的Rails視圖和控制器的作用,用於發送電子郵件本身退房Action Mailer

但是,如果您正在尋找一些非常基本的東西,只需發送表單中的電子郵件,就可以使用很多現成的解決方案,而不需要使用Rails自帶的自帶的解決方案。我使用Formspree

+0

我想我是有點厚在這裏,但我無法弄清楚如何在這裏我把我的形式 –

+0

Rails Mailer有點奇怪,特別是如果你是Rails新手。它完全關注電子郵件的發送並與其他所有事物分離。因此,您的表單將只是另一個視圖,其提交操作將轉到另一個控制器操作。 但是,一旦在控制器中發現了Action Mailer方法。查看Rails指南中的第一個鏈接,它真的有助於您瞭解要做什麼。 – Justin

+0

查看www.enformed.io,有幾個有趣的功能,比如在提交後設置重定向和電子郵件定製。 – Ivangrx

3

可以使用做到這一點:

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 

梅勒視圖

<%[email protected]%> 
+0

這看起來不錯,整潔,但「爲梅勒」位呢? –

+0

它是您從中發送郵件的郵件程序。示例類UserMailer

+0

因此,當我按提交我得到一個'沒有路由匹配[郵政]「/路徑」錯誤,我需要的東西放入路線? –

相關問題