簡體   English   中英

Play Framework 2.0.X中的郵件表單

[英]Mail form in Play Framework 2.0.X

我使用的是Play Framework(2.0.4),我想知道用發送電子郵件的表單創建頁面的最佳方法是什么。 我知道有一個用於發送電子郵件的插件,所以這不是問題-我可以使用發送電子郵件的方法編寫控制器。

我的問題更多是關於我應該提供的操作(在路由文件中)。 是否應該創建一個接受參數(發件人姓名,發件人電子郵件,主題,正文)的POST操作? 還是應該以某種方式創建一個模型對象,該模型對象將填寫在表單中並傳遞給控制器​​中的操作? 最佳做法是什么? 以及如何正確地粘貼它(動作應在route文件中如何顯示,視圖應如何顯示)?

您需要兩個視圖-一個視圖具有表單(我們將其mailForm ),第二個bodyHtml具有該郵件的正文( bodyHtml )。 (如果要發送HTML和TXT版本,則可以選擇創建bodyTxt

專用模型將是一個很好的幫助,因為它將幫助您使用Play的Form<T> ,如果需要,您也可以將發送的消息存儲在DB中。 無論如何,您還可以在Strings的映射上進行操作-尤其是當您計划制作許多動態表單(字段數未知)時。

填寫表單后,將轉到一個示例sendEmail()操作,在該示例中,您需要填寫Form( bindFromRequest ),最終創建對象並保存到DB,最后作為參數傳遞給bodyHtml視圖。 當然,與其將呈現的視圖作為操作的結果返回,還不應該將其與toString一起使用-通過郵件發送。 該操作應將重定向返回到某些“謝謝”頁面。 就這樣。

注意:寫得很快,如果有不清楚的地方,請告訴我...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM