我有一个在Heroku上运行的 RoR 应用程序,我使用Cloudmailin插件将电子邮件发送到应用程序本身。
这些电子邮件的内容将用于在数据库中创建新内容。这是一个应用程序,用户可以在其中对其他用户下注。结果是通过电子邮件发送到应用程序,因此可以触发结算过程。
我有一个看起来像这样的传入邮件控制器:
class IncomingMailsController < ApplicationController
skip_before_filter :verify_authenticity_token
def create
Spotprice.create(:deliverydate => Date.tomorrow, :spotarea_id => Spotarea.find_by_areaname("Phelix").id, :product_id => Product.find_by_productname("Base").id, :value_in_currency => "87")
end
end
上面的工作很好,但我需要它来阅读电子邮件的内容,而不是上面代码中的静态内容(Phelix、Base、Date.tomorrow 和 87)。
那么当电子邮件正文如下所示时,我该怎么做:
23112012 Phelix Base 87.00
23112012 System Peak 64.55
邮件有多行,其中每一行是数据库中的一个新 Spotprice。这意味着我还必须以某种方式遍历邮件中的每一行并分别创建每个 Spotprice。
帮助将非常受欢迎:)