0

我正在创建一个表单,允许用户在不实际看到他们的电子邮件地址的情况下向另一个用户发送电子邮件。

我正在使用这个 gem:https ://github.com/plataformatec/mail_form来处理这个。

目前我非常接近让事情正常进行。我有我的应用程序通过电子邮件发送正确的人并提供正确的回复信息。但是,我无法显示消息正文。

我的视图形式。(电子邮件/new.html.erb)

<h1>Mail#new</h1>
<p>Find me in app/views/mail/new.html.erb</p>


 <%= form_for @email do |f| %>

      <%= f.label :message, 'Message:' %> 
      <%= f.text_area :message %>

      <%= f.submit "Send Message" %>
    <% end %>

我的控制器(emails_controller.rb)

类 EmailsController < ApplicationController

def new @email = Email.new flash[:userid] = params[:id]

结尾

  def create
    @touser = User.find(flash[:userid])
    @fromuser = User.find(current_user.id.to_i)
    @email = Email.new(:name => @fromuser.name, :email => @fromuser.email, :message => params[:message], :to => @touser.email)

    if @email.deliver
        flash.now[:notice] = 'Thank you for your message!'
    else
        render :new
    end

  end

end

所以使用 params[:message] 是行不通的。如何访问通过视图收集的 :message 数据?

4

1 回答 1

3

如果您使用 form_for @email,则消息将在 params[:email][:message] 中

于 2013-07-24T08:43:28.960 回答